Gitlab Docker 安装、配置邮件、开启SSH

Gitlab Setup

1 社区版本

1.1 docker run 官方 ce 版本

sudo docker run --detach \
    --hostname localhost \
    --publish 443:443 --publish 80:80 --publish 22:22 \
    --name gitlab \
    --restart always \
    --volume ./config:/etc/gitlab \
    --volume ./logs:/var/log/gitlab \
    --volume ./data:/var/opt/gitlab \
    gitlab/gitlab-ce:latest
复制代码

1.2 docker run 汉化 ce 版本

sudo docker run --detach \
    --hostname localhost \
    --publish 443:443 --publish 80:80 --publish 22:22 \
    --name cn-gitlab \
    --restart always \
    --volume ./config:/etc/gitlab \
    --volume ./logs:/var/log/gitlab \
    --volume ./data:/var/opt/gitlab \
    twang2218/gitlab-ce-zh:latest
复制代码

1.3 docker compose 方式

web:
  image: 'gitlab/gitlab-ce:latest'
  restart: always
  hostname: 'gitlab.example.com'
  environment:
    GITLAB_OMNIBUS_CONFIG: |
      external_url 'https://gitlab.example.com'
  ports:
    - '80:80'
    - '443:443'
    - '22:22'
  volumes:
    - '/srv/gitlab/config:/etc/gitlab'
    - '/srv/gitlab/logs:/var/log/gitlab'
    - '/srv/gitlab/data:/var/opt/gitlab'
复制代码

2 开启 ssh

  • 修改宿主机 ssh 默认端口 22 => 1022
vi /etc/ssh/sshd_config

Port 22
Port 1022
复制代码
  • 防火墙 firewall
firewall-cmd --zone=public --add-port=10022/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --query-port=10022/tcp
复制代码
  • SELinux
yum provides semanage
yum install policycoreutils-python

semanage port -l | grep ssh
semanage port -a -t ssh_port_t -p tcp 10022
semanage port -l | grep ssh
systemctl restart sshd.service
复制代码

2 配置邮件

  • 修改 /etc/gitlab/gitlab.rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "邮箱地址"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_domain'] = "exmail.qq.com"
gitlab_rails['gitlab_email_from'] = '邮箱地址'
复制代码
  • 更新配置 gitlab-ctl reconfigure

  • 重启服务 gitlab-ctl restart

3 centos7 中 docker 文件挂载,容器中没有执行权限

1,在运行容器的时候,给容器加特权:
示例:docker run -i -t --privileged=true -v /home/docs:/src waterchestnut/nodejs:0.12.0

2,临时关闭selinux:
示例:su -c "setenforce 0"
注意:之后要记得重新开启selinux,命令:su -c "setenforce 1"

3. 添加selinux规则,将要挂载的目录添加到白名单:
chcon -Rt svirt_sandbox_file_t /home/docs
复制代码

参考


© 会煮咖啡的猫咪

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是 GitLab Docker安装步骤: 1. 确保已安装 DockerDocker Compose,可以在命令行输入以下命令进行检查: ``` docker --version docker-compose --version ``` 2. 创建 GitLab 相关目录和配置文件。在命令行中输入以下命令: ``` sudo mkdir -p /srv/gitlab/config /srv/gitlab/data /srv/gitlab/logs sudo touch /srv/gitlab/docker-compose.yml /srv/gitlab/config/gitlab.rb ``` 3. 在 `docker-compose.yml` 文件中添加以下内容: ``` version: '3' services: web: image: 'gitlab/gitlab-ce:latest' restart: always hostname: 'gitlab.example.com' environment: GITLAB_OMNIBUS_CONFIG: | external_url 'http://gitlab.example.com' gitlab_rails['gitlab_shell_ssh_port'] = 22 gitlab_rails['lfs_enabled'] = true gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.gmail.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name'] = "[email protected]" gitlab_rails['smtp_password'] = "your-email-password" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false ports: - '80:80' - '443:443' - '22:22' volumes: - '/srv/gitlab/config:/etc/gitlab' - '/srv/gitlab/logs:/var/log/gitlab' - '/srv/gitlab/data:/var/opt/gitlab' ``` 其中,`hostname` 是你 GitLab 访问地址,`external_url` 是你 GitLab 的访问 URL,需要根据实际情况进行修改。 4. 在 `gitlab.rb` 文件中添加以下内容: ``` gitlab_rails['smtp_address'] = "smtp.gmail.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name'] = "[email protected]" gitlab_rails['smtp_password'] = "your-email-password" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false ``` 其中,`smtp_address` 和 `smtp_port` 是 SMTP 服务器的地址和端口号,`smtp_user_name` 和 `smtp_password` 是发送邮件所用的邮箱地址和密码,需要根据实际情况进行修改。 5. 在命令行中切换到 `docker-compose.yml` 所在目录,运行以下命令启动 GitLab: ``` sudo docker-compose up -d ``` 6. 执行完上述命令后,GitLab 即可在本地运行,可以通过访问 `http://gitlab.example.com` 进行访问,账号为默认 `root`,密码见命令行输出日志。 希望以上步骤可以帮到您,如有问题或疑问可以随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值