获取镜像
docker pull gitlab/gitlab-ce:10.6.4-ce.0
编辑配置文件 .env
GIT_HOSTNAME=git.com.cnGIT_HTTP_PORT=80GIT_HTTPS_PORT=443GIT_SSH_PORT=10022GIT_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.0container_name: gitrestart: alwaysnetwork_mode: bridgehostname: ${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.rbsed -i $'s/# gitlab_rails\[\'smtp_address\'\] = "smtp.server"/gitlab_rails\[\'smtp_address\'\] = "smtp.263.net"/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_port\'\] = 465/gitlab_rails\[\'smtp_port\'\] = 25/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_user_name\'\] = "smtp user"/gitlab_rails\[\'smtp_user_name\'\] = "gitlab@git.com.cn"/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_password\'\] = "smtp password"/gitlab_rails\[\'smtp_password\'\] = "123456"/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_domain\'\] = "example.com"/gitlab_rails\[\'smtp_domain\'\] = "263.net"/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_enable_starttls_auto\'\] = true/gitlab_rails\[\'smtp_enable_starttls_auto\'\] = false/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_tls\'\] = false/gitlab_rails\[\'smtp_tls\'\] = false/' /opt/gitlab/config/gitlab.rbsed -i $'s/# gitlab_rails\[\'smtp_openssl_verify_mode\'\] = \'none\'/gitlab_rails\[\'smtp_openssl_verify_mode\'\] = \'none\'/' /opt/gitlab/config/gitlab.rb
检查


