使用容器搭建自己的gitlab
首先,下载镜像:
docker pull gitlab/gitlab-ce:latest
启动镜像,注意先建立/home/gitlab,免得容器销毁数据全无。
还要注意,因为git使用22号端口,这里映射的是1222端口。所以,只能使用http方式来进行项目的clone和操作。
docker run \
--hostname git.superpig.win \
--publish 1443:443 --publish 1880:80 --publish 1222:22 \
--name gitlab \
--volume /home/gitlab/config:/etc/gitlab \
--volume /home/gitlab/logs:/var/log/gitlab \
--volume /home/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce
漫长的等待,可以先配下nginx,注意要先申请好证书,证书默认会在/etc/letsencrypt/live/git.superpig.win/fullchain.pem 。而且,域名商那边也要设置git.superpig.win的A记录。
server {
listen 80;
server_tokens off;
# access_log /var/log/nginx/web2.access.log main;
server_name git.superpig.win;
location ^~ / {
rewrite ^ https://$server_name:443$request_uri? permanent;
}
}
server{
listen 443 ssl;
server_name git.superpig.win;
gzip on;
gzip_proxied any;
gzip_min_length 1024;
gzip_comp_level 3;
gzip_types text/plain text/javascript text/css text/json application/javascript application/json image/jpeg image/gif image/png;
ssl on;
ssl_certificate /etc/letsencrypt/live/git.superpig.win/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/git.superpig.win/privkey.pem;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:1880;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
此时,重启nginx,然后键入https://git.superpig.win
,如果没有问题,会出现一个让你设置密码的网页,设置密码后,用 root:pwd 登录,进入项目,该怎么玩就怎么玩。
恭喜,你已经有自己的gitlab了。
来自 大脸猫 写于 2018-12-16 18:37 -- 更新于2020-10-19 13:06 -- 1 条评论