美文网首页
使用docker部署gitlab流程记录

使用docker部署gitlab流程记录

作者: __XY__ | 来源:发表于2018-03-14 14:25 被阅读0次

why docker

  1. 部署简单,而且docker官网有成熟的docker gitlab repo
  2. 迁移简单 ,如果后期jp的服务器网速慢了or代码量增加,可以考虑整体把docker迁移到国内类似 aliyun

install docker

refer:

https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce-1

note:

apt-get install 之前需要 SET UP THE REPOSITORY

check docker if installed ok

sudo service docker status

pull gitlab docker repo

refer:

https://hub.docker.com/r/gitlab/gitlab-ce/

install command

docker pull gitlab/gitlab-ce

check gitlab if installed ok

sudo docker image ls

run docker

prepare

mkdir -p /srv/gitlab/config
mkdir -p /srv/gitlab/logs
mkdir -p /srv/gitlab/data

run

sudo docker run --detach \
    --hostname 54.95.90.120 \
    --publish 443:443 --publish 80:80 --publish 10080: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

参数说明:
--detach: 设置容器后台运行
--hostname: 设置容器的 hostname,如果是本地localhost ,否则使用外网ip
--publish: 端口转发规则(80:Http 访问端口,443:Https 访问端口,10080:主机的 ssh 访问端口,22:Docker 容器中 ssh 访问端口)
--name:容器名称
--restart always:每次启动容器就重启GitLab
--volume: 共享目录挂载,即 docker 容器内外数据共享(/srv/gitlab/data: 应用程序数据,/srv/gitlab/logs:GitLab 的 log,/srv/gitlab/config:GitLab 的配置文件)
--e:配置 Gitlab 运行的环境变量

Note:
      所有冒号后面的都是docker的东西,冒号前面的是host主机的
      例如:10080:22  为本机的10080端口映射为docker的22端口

check if docker run ok

  1. 查看正在运行的docker
sudo docker ps -a

如果starting消失了 则ok了

  1. 如何参数写错了可以暂停、删除
    sudo docker stop ID/name
    sudo docker rm ID/name
  2. 查看docker安装的具体信息
    3.1 查看docker的设置信息
docker inspect ID/name

3.2 查看安装进度

sudo docker logs gitlab

configure gitlab

refer :

https://www.jianshu.com/p/24959481340e

刚刚启动Gitlab的时候需要我们输入一个密码,这个密码是管理员用户的密码。我们在登录那里使用root作为用户名,然后用刚刚设置的密码,就可以以管理员身份登录Gitlab

That All

安装中发现的问题

安装中途发现服务器的内存不够,总是卡死
使用free -m 来检查内存大小,如果需要更改vagrant的配置文件。最后加入下面配置

config.vm.provider "virtualbox" do |v|
  v.memory = 1024*4
  v.cpus = 2
end

如果配置没有问题,进入虚拟机
free -m 来验证

ping 不通

ping ip not work

查看本机开放的port

sudo netstat -anp|grep 80

发现本机的80端口的开放,并且本机拿页面也是可以拿到的

curl localhost:80

原因分析
1 防火墙的原因
2 aws的对外rule配置问题
经检查为aws需要配置一个inbound rules

相关文章

网友评论

      本文标题:使用docker部署gitlab流程记录

      本文链接:https://www.haomeiwen.com/subject/ykkfqftx.html