2019獨角獸企業重金招聘Python工程師標準>>>
1、搭建gitlab,之前yum安裝gitlab,安裝后一直報502錯誤,網上百度試過還是無法使用;
? ? 所以這次部署在docker里面;如下命令:
docker run --detach --hostname gitlab.forebix.com --publish 4433:443 --publish 10080:80 --publish 8022:22 --name gitlab --restart always --volume /srv/gitlab/config:/etc/gitlab --volume /srv/gitlab/logs:/var/log/gitlab --volume /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest
--hostname? 表示主機名,也可以寫IP或者域名;
--publish? ?隱射端口? ?https? ? https? ? ?sshd等;? 左邊是宿主機 ,右邊是容器端口;
--name? ?名稱? ??
--volume? ? 隱射目錄? ? ?左邊是宿主機目錄? ?右邊是容器內目錄;
下載后鏡像會自動啟動,使用ps 查看;
[root@fenye2019 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
193cb075060e gitlab/gitlab-ce:latest "/assets/wrapper" 41 seconds ago Up 36 seconds (health: starting) 0.0.0.0:8022->22/tcp, 0.0.0.0:10080->80/tcp, 0.0.0.0:4433->443/tcp gitlab
[root@fenye2019 ~]# docker restart gitlab
gitlab
也可以測試下本地端口是否可達;? tenet? 127.0.0.1? ?10080
http://gitlab.forebix.com:10080/? 輸入域名來訪問:但是需要加端口,比較麻煩.
可以添加nginx,然后做端口轉發即可,轉發到本地gitlab.forebix.com這個域名的80端口;
配置如下:? 負載均衡池可以寫多個;
[root@fenye2019 vhost]# cat gitlab.conf
#配置負載均衡池
#jenkins負載均衡池
#upstream jenk_pool{
# server 127.0.0.1:8181;
#}
#jenkins轉發
#server {
# listen 80;
# server_name jenkins.forebix.com;
# access_log /tmp/jenkins.log;
# error_log /tmp/jenkins.error;#將所有請求轉發給jenk_pool的應用處理
# location / {
# proxy_set_header Host $host;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# proxy_pass http://jenk_pool;
# }
#}
upstream gitlab_pool{server 127.0.0.1:10080;
}
server {listen 80;server_name gitlab.forebix.com;access_log /tmp/gitlab.log;error_log /tmp/gitlab.error;location / {proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://gitlab_pool;}}
?