在阿里云上利用Docker部署Gogs代码管理仓库

本着折腾,在阿里云上利用Docker部署自己团队专属的Gogs代码托管仓库,可以利用外网进行全网访问。先将过程记录如下。

一开始在阿里云上和亚马逊云(AWS)上都进行了Gogs的部署,但是AWS上利用外网访问有点麻烦,一时没搞定。所以现在只有在阿里云上成功部署。

ubuntu16.04 service

首先 sudo apt-get update

安装Docker

sudo apt-get install -y docker.io

完成后启用Docker服务:service docker start

(这里在AWS上需要权限,所以此时应该先sudo passwd root设置root密码,然后再root下执行。阿里云上无此操作)

安装MySQL

先搜索一下docker search mysql

阿里云上安装使用docker pull mysql:latest

之后执行:

docker run -d -p 13306:3306  --name mysql2 -v /opt/mydata/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:latest

含义是:生成名为mydql2的docker镜像,在后台执行,root账号的密码为123456.主机映射端口为13306

以后在docker中启用mysql的方法为:

docker start mysql2

关闭为:

docker stop mysql2

启用后进入容器的方法为:

先docker ps查看已启用服务的nameID

之后再: sudo docker attach nameID

所以现在要进入到mysql容器中新建gogs数据库

mysql -u root -p

需要输入密码,前面设置的123456

之后新建gogs

mysql> CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin;

最后退出mysql

mysql> QUIT;

安装Gogs

先搜索一下docker search gogs

安装gogs

docker pull gogs/gogs:latest

启用gogs

 docker run -d --name=mygogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs 

至此使用Docker安装Gogs以及所需的MySQL数据库已完成。

配置外网访问

注意我们刚才设置的两个端口mysql的13306和gogs的10080

我们需要设置阿里云服务器的安全组。

网络和安全中的安全组。点开后

配置规则添加安全组规则

配置如图,然后再进行一次配置13306端口。之后就可以通过浏览器访问你配置的Gogs了。

具体为阿里云服务器的公网ip(如99.15.155.100),使用http://99.15.155.100:10080来访问Gogs。初次访问会进行相关设置。可参考这篇博客

至此,在阿里云上利用Docker部署Gogs就完成了,enjoy it!

猜你喜欢

转载自blog.csdn.net/jesse_pan/article/details/83512056