docker
安裝
yum -y install docker-io
systemctl enable docker
service docker start
docker images
配置阿里雲鏡像加速
- 進入阿里雲後臺
- 進入"容器鏡像服務"
- 進入"鏡像加速"
- 查看"加速器地址":
https://q2n4xzh1.mirror.aliyuncs.com
# vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://q2n4xzh1.mirror.aliyuncs.com"]
}
重啓 docker
systemctl daemon-reload
service docker restart
gitlab
初始化目錄
mkdir -p /data/gitlab
創建容器
docker run --detach \
--hostname gitlab \
--publish 1443:443 --publish 1222:22 \
--name gitlab \
--restart always \
--volume /data/gitlab/config:/etc/gitlab \
--volume /data/gitlab/logs:/var/log/gitlab \
--volume /data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
拷貝證書
mkdir -p /data/gitlab/config/ssl
cp /usr/local/openresty/nginx/conf/cert/code.weflys.com.* /data/gitlab/config/ssl/
修改配置
# vim /data/gitlab/config/gitlab.rb
external_url 'https://code.weflys.com'
nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/gitlab/ssl/code.weflys.com.pem"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/code.weflys.com.key"
gitlab_rails['gitlab_shell_ssh_port'] = 1222
說明:阿里雲需要開放1222端口
修改時區
docker cp /etc/timezone gitlab:/etc/timezone
docker cp /usr/share/zoneinfo/Asia/Shanghai gitlab:/etc/localtime
重啓服務
docker restart gitlab
查看日誌
docker logs -f gitlab
等待 gitlab 啓動成功
配置 nginx 代理
server {
listen 80;
server_name code.weflys.com;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl;
server_name code.weflys.com;
root html;
index index.html;
ssl_certificate cert/code.weflys.com.pem;
ssl_certificate_key cert/code.weflys.com.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass https://127.0.0.1:1443;
}
include error.conf;
}
jenkins
初始化目錄
mkdir -p /data/jenkins/jenkins_home
拉取鏡像
docker pull jenkins/jenkins
創建容器
docker run -d \
--name jenkins \
-v /data/jenkins/jenkins_home:/var/jenkins_home \
-p 18095:8080 \
-p 50000:50000 \
-u 0 \
--restart always \
jenkins/jenkins
修改時區
docker cp /etc/timezone jenkins:/etc/timezone
docker cp /usr/share/zoneinfo/Asia/Shanghai jenkins:/etc/localtime
啓動容器
docker start jenkins
查看日誌
docker logs -f jenkins