获取镜像
docker pull gitlab/gitlab-ce:10.6.4-ce.0
编辑配置文件 .env
GIT_HOSTNAME=git.com.cn
GIT_HTTP_PORT=80
GIT_HTTPS_PORT=443
GIT_SSH_PORT=10022
GIT_EXT_URL='http://git.com.cn'
GIT_EXT_SSH_PORT=10022
编辑 docker-compose.yml
version: '3'
services:
git:
image: gitlab/gitlab-ce:10.6.4-ce.0
container_name: git
restart: always
network_mode: bridge
hostname: ${GIT_HOSTNAME}
ports:
- "${GIT_HTTP_PORT}:80"
- "${GIT_HTTPS_PORT}:443"
- "${GIT_SSH_PORT}:22"
environment:
GITLAB_OMNIBUS_CONFIG: |
# 将两个变量改为具体的值,否则启动将报错
external_url ${GIT_EXT_URL}
gitlab_rails['gitlab_shell_ssh_port'] = ${GIT_EXT_SSH_PORT}
volumes:
- /opt/gitlab/config:/etc/gitlab:z
- /opt/gitlab/data:/var/opt/gitlab:z
- /opt/gitlab/logs:/var/log/gitlab:z
- /etc/localtime:/etc/localtime:ro
- /opt/gitlab/data/backups:/var/opt/gitlab/backups
启动
docker-compose up -d
修改配置文件
用于邮件发送
sed -i $'s/# gitlab_rails\[\'smtp_enable\'\] = true/gitlab_rails\[\'smtp_enable\'\] = true/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_address\'\] = "smtp.server"/gitlab_rails\[\'smtp_address\'\] = "smtp.263.net"/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_port\'\] = 465/gitlab_rails\[\'smtp_port\'\] = 25/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_user_name\'\] = "smtp user"/gitlab_rails\[\'smtp_user_name\'\] = "gitlab@git.com.cn"/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_password\'\] = "smtp password"/gitlab_rails\[\'smtp_password\'\] = "123456"/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_domain\'\] = "example.com"/gitlab_rails\[\'smtp_domain\'\] = "263.net"/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_enable_starttls_auto\'\] = true/gitlab_rails\[\'smtp_enable_starttls_auto\'\] = false/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_tls\'\] = false/gitlab_rails\[\'smtp_tls\'\] = false/' /opt/gitlab/config/gitlab.rb
sed -i $'s/# gitlab_rails\[\'smtp_openssl_verify_mode\'\] = \'none\'/gitlab_rails\[\'smtp_openssl_verify_mode\'\] = \'none\'/' /opt/gitlab/config/gitlab.rb