使用Docker部署Gitlab

2021-07-03 15:16:55 字數 2922 閱讀 4356

由於公司的**伺服器已使用gitosis搭建,但由於使用者和許可權管理太麻煩,

現在想在原有伺服器上再搭建gitlab,使用gitlab官方方法直接安裝,

會導致與gitosis衝突,使得gitosis不可用,

因為要保持兩個服務同時存在,所以就想到利用docker來搭建gitlab。

以下以ubuntu 14.04為例安裝docker和gitlab

在bash中輸入命令安裝最新的docker

sudo apt-get purge docker.io

curl -s | sudo sh

sudo apt-get update

sudo apt-get install lxc-docker

docker pull sameersbn/gitlab:latest

docker pull sameersbn/mysql:latest

docker pull sameersbn/redis:latest

docker run \

--name=gitlab_redis \

-tid \

sameersbn/redis:latest

mkdir -p /opt/gitlab/mysql

docker run \

--name=gitlab_mysql \

-tid \

-e'db_name=gitlabhq_production' \

-e'db_user=gitlab' \

-e'db_pass=password' \

-v /opt/gitlab/mysql:/var/lib/mysql \

sameersbn/mysql:latest

mkdir -p /opt/gitlab/data /opt/gitlab/log

docker run \

--name='gitlab' \

-itd \

--link gitlab_mysql:mysql \

--link gitlab_redis:redisio \

-e'gitlab_port=80' \

-e'gitlab_ssh_port=22' \

-p 10022:22 -p 10080:80 \

-v /var/run/docker.sock:/run/docker.sock \

-v $(which docker):/bin/docker \

-v /opt/gitlab/data:/home/git/data \

-v /opt/gitlab/log:/var/log/gitlab \

sameersbn/gitlab:latest

這一步驟會耗時幾分鐘,因為這一步會做一些初始化操作,我們可以通過docker logs gitlab來檢視安裝過程。

我們指定了10022作為ssh的訪問埠,10080作為http的訪問埠,

執行完後,稍微過1-2分鐘後,開啟以下位址應該就可以訪問gitlab了

如果是在伺服器上搭建,請替換localhost為伺服器位址

加入/etc/rc.local

echo

'docker start gitlab_redis' >> /etc/rc.local

echo

'docker start gitlab_mysql' >> /etc/rc.local

echo

'docker start gitlab' >> /etc/rc.local

docker exec -it gitlab bash
docker run --rm --volume=/usr/local/bin:/target jpetazzo/nsenter

sudo docker-enter gitlab

docker stop gitlab && docker rm gitlab

docker run --name=gitlab -it --rm [options] \

docker stop gitlab && docker rm gitlab

docker run --name=gitlab -it --rm [options] \

docker pull sameersbn/gitlab:7.11.4
docker stop gitlab

docker rm gitlab

docker run \

--name='gitlab' \

-itd \

--link gitlab_mysql:mysql \

--link gitlab_redis:redisio \

-e'gitlab_port=80' \

-e'gitlab_ssh_port=22' \

-p 10022:22 -p 10080:80 \

-v /var/run/docker.sock:/run/docker.sock \

-v $(which docker):/bin/docker \

-v /opt/gitlab/data:/home/git/data \

-v /opt/gitlab/log:/var/log/gitlab \

sameersbn/gitlab:latest

本文出處:

MacOS通過Docker部署Gitlab

官網對gitlab ce 和 gitlab ee都 有詳細的介紹和各種安裝方法,這裡只講到如何在 macos 系統中利用 docker 來快速安裝 gitlab ce並部署在本地。安裝完 docker 後會發現有命令列模式 terminal 和 gui模式 gitlab 伺服器的儲存檔案可以放在系統...

Docker 使用Docker部署Node服務

docker 是乙個開源的容器引擎。開發者可以將自己的應用以及依賴打包為乙個可移植的容器,然後發布到 linux 機器上。它類似於乙個輕量級的虛擬機器,極大地方便了使用者在伺服器端部署和管理應用環境。apt install docker.io安裝成功後檢視docker版本 建立package.jso...

使用docker部署gitlab

docker build t lemonbar gitlab 注意此處的 不是句號,是代表dockerfile所在的路徑,代表當前路徑。t是build出來的image的名字。docker push lemonbar gitlab 可以通過push命令,來把自己的image上傳到public regi...