## 值用來記錄,不喜勿噴
先創建文件夾gitlab,用來存放gitlab 相關的數據、配置、以及日志信息
我是在根目錄創建的
cd /
mkdir gitlab
# 並創建相關的子目錄
mkdir config
mkdir log
mkdir data
# 然后創建在gitlab文件夾下創建compose 以及dcoker 的執行文件 docker-compose.yml
# 編寫執行文件內容
vim docker-compose.yml
# 內容為
version: '3'
services:
gitlab:
restart: always
image: twang2218/gitlab-ce-zh:latest
container_name: gitlab
hostname: '00.00.00.00' # 也可以使用IP地址
privileged: true
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
gitlab_rails['time_zone'] = 'Asia/Shanghai'
external_url 'http://00.00.00.00:7002' #http地址
gitlab_rails['gitlab_shell_ssh_port'] = 7003 #ssh地址端口
gitlab_rails['smtp_enable'] = true #啟用SMTP,郵件發送服務器必開
gitlab_rails['smtp_address'] = "smtp.163.com" # 【163郵件服務器地址】
gitlab_rails['smtp_port'] = 465 # 啟用的端口 ,有人寫的是25,但是阿里的會禁用,會報錯,所以建議是465,還需要去服務器開啟安全策略配置端口
gitlab_rails['smtp_user_name'] = 'xxxxxx@163.com'
gitlab_rails['smtp_password'] = "xxxxxxxxxx" # 163授權密碼 不是163登錄密碼,建議百度去查
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
gitlab_rails['gitlab_email_from'] = 'xxxxxx@163.com' # 發件人郵箱 還有個配置是抄送人郵箱地址,
user['git_user_email'] = "xxxxxx@163.com" # 校驗什么什么的郵箱 必須和上一個一樣
ports:
- '7001:443'
- '7002:7002' # 注意這里不是80 與上面external_url自定義端口保持一致
- '7003:22'
volumes: # 宿主機地址若沒有,會自動創建目錄
- /gitlab/config:/etc/gitlab
- /gitlab/log:/var/log/gitlab
- /gitlab/data:/var/opt/gitlab
# 然后給創建的文件夾分配權限
chmod 777 /gitlab
chmod 777 /gitlab/*
# 然后在compose 目錄下執行
docker-compose up -d
# 不報錯的情況下可以執行docker logs -f gitlab --tail=100 查看最近100行的日志
還可以 docker exec -it gitlab bash 進入到創建的gitlab 容器內
去執行 gitlab-rails console
Notify.test_email('收件人郵箱地址', '郵箱主題', '郵箱內容').deliver_now
去測試發送郵箱
接下來就可以訪問 http://00.00.00.00:7002/ 去訪問你的gitlab
首次進入是需要給root 用戶設置密碼的.
