1.下載安裝docker
apt install docker.io
2.服務啟動
service docker start
3.拉取gitlab
docker pull beginor/gitlab-ce:11.3.0-ce.0
docker run \
--privileged=true \
--hostname 192.168.0.2 \
--detach \
--publish 80:80 \
--publish 443:443 \
--publish 23:22 \
--name gitlab \
--restart unless-stopped \
--volume /home/hxyz/gitlab/config:/etc/gitlab \
--volume /home/hxyz/gitlab/log:/var/log/gitlab \
--volume /home/hxyz/gitlab/data:/var/opt/gitlab \
beginor/gitlab-ce:11.3.0-ce.0
4. docker基礎命令
docker images // 列出本地鏡像。
-a :列出本地所有的鏡像(含中間映像層,默認情況下,過濾掉中間映像層);
--digests :顯示鏡像的摘要信息;
-f :顯示滿足條件的鏡像;
--format :指定返回值的模板文件;
--no-trunc :顯示完整的鏡像信息;
-q:只顯示鏡像ID。
docker rmi // 刪除本地一個或多少鏡像。
docker ps //列出所有在運行的容器信息
docker ps -n 5 //列出最近創建的5個容器信息
docker ps -a -q //列出所有創建的容器ID
-a :顯示所有的容器,包括未運行的。
-f :根據條件過濾顯示的內容。
--format :指定返回值的模板文件。
-l :顯示最近創建的容器。
-n :列出最近創建的n個容器。
--no-trunc :不截斷輸出。
-q :靜默模式,只顯示容器編號。
-s :顯示總的文件大小。
docker start gitlab//啟動一個或多個已經被停止的容器
docker stop gitlab//停止一個運行中的容器
docker restart gitlab//重啟容器
docker kill gitlab //殺掉一個運行中的容器
docker rm -f gitlab //刪除容器
-f:通過SIGKILL信號強制刪除一個運行中的容器
-l :移除容器間的網絡連接,而非容器本身
-v :-v 刪除與容器關聯的卷
docker logs -f gitlab //跟蹤查看容器mynginx的日志輸出。
docker logs --since="2016-07-01" --tail=10 gitlab //查看容器mynginx從2016年7月1日后的最新10條日志。
docker logs -f -t --tail gitlab所有日志
docker exec //在運行的容器中執行命令
-d :分離模式: 在后台運行
-i :即使沒有附加也保持STDIN 打開
-t :分配一個偽終端
docker exec -it gitlab /bin/sh /root/runoob.sh //在容器gitlab中以交互模式執行容器內/root/runoob.sh腳本
docker exec -i -t gitlab /bin/bash //在容器gitlab中開啟一個交互模式的終端
5.gitlab命令
gitlab-ctl start:啟動全部服務
gitlab-ctl restart:重啟全部服務
gitlab-ctl stop:停止全部服務
gitlab-ctl reconfigure:使配置文件生效(一般修改完主配置文件/etc/gitlab/gitlab.rb,需要執行此命令)
gitlab-ctl show-config :驗證配置文件
gitlab-ctl uninstall:刪除gitlab(保留數據)
gitlab-ctl cleanse:刪除所有數據,從新開始
6、修改/etc/gitlab/gitlab.rb
//在后面修改自己的ssh端口
gitlab_rails['gitlab_shell_ssh_port'] = 23
使其生效
gitlab-ctl reconfigure
7.gitlab郵箱設置
### Email Settings
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'xxxx123@126.com'
gitlab_rails['gitlab_email_display_name'] = 'gitlab自動郵件'
gitlab_rails['gitlab_email_reply_to'] = 'noreply@126.com'
gitlab_rails['gitlab_email_subject_suffix'] = ''
### GitLab email server settings
###! Docs: https://docs.gitlab.com/omnibus/settings/smtp.html
###! **Use smtp instead of sendmail/postfix.**
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qiye.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "xxxx123@163.com"
gitlab_rails['smtp_password'] = "youxiangeng"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
###! **Can be: 'none', 'peer', 'client_once', 'fail_if_no_peer_cert'**
###! Docs: http://api.rubyonrails.org/classes/ActionMailer/Base.html
gitlab_rails['smtp_openssl_verify_mode'] = 'none'