Docker+Gogs搭建我的Git服务

自助搭建git服务器, 采用gogs + docker 的方式是很是方便的。 可是在实际操做过程当中可能仍是遇到一些小问题, 这里记录下来方便其余人查阅。mysql

前提条件:

mysql也是docker方式运行的:docker run --name mysql -v /mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:latestnginx

具体步骤:

1.  docker pull gogs/gogsgit

2.  mkdir -p /var/gogsweb

3.  docker run --name=gogs -p 10080:3000 -v /var/gogs:/data --link mysql:latest -d gogs/gogssql

4. 修改nginxdocker

server {
	listen 80;
	server_name git.xx.com;
	
	location / {
		proxy_pass http://127.0.0.1:10080;
	}
}

5. nginx -s reload数据库

6. 登陆mysql建立数据库: gogs浏览器

 

到此, 安装过程基本完成了。 在浏览器里面访问 git.xx.com会跳转到“首次运行安装程序”。bash

 

这里配置也很重要, 有几个地方须要注意:服务器

1.  数据库主机: 我这里用的 mysql , 是由于我在docker启动的时候用了--link参数, 因此在gogs 容器内会有:

bash-4.4# cat /etc/hosts
127.0.0.1	localhost
172.17.0.2	latest e2bbeb181f94 mysql

因此gogs能够找到mysql的ip。 若是mysql是经过其余方式部署的, 只须要保障gogs容器内能获得mysql的链接就能够了。

2. 域名: git.xx.com      跟nginx一致

3. SSH 端口号: 22       这个能够不填写

4. HTTP 端口号: 3000   这里要填写3000才对. 有些人重启容器后发现访问不了git.xx.com了, 就是由于填写了10080. 这个HTTP端口号是gogs web容器启动时须要监听的端口, 10080端口是主机与容器3000端口映射的,这里不能填写。 

5. 应用URL: http://git.xx.com

 

上面第1点和第4点容易出错。

相关文章
相关标签/搜索