内网服务器部署Gitea的简单记录

对部署Gitea的简单记录


主机:CentOS
选型:用了DockerCE+Gitea

DockerCE和Docker的区别在,前者是最新版(免费的社区版,17.X+),后者是老版本(1.X+),另外还有个企业版是DockerEE

Gitea是Gogs的一个开源分支版本,因为Gogs的Docker版本一直有点问题,所以就改用它了。

首先需要部署Docker。默认会带老版本的Docker,这里需要全部卸载:

sudo yum remove docker docker-common docker-selinux docker-engine

然后安装需要的软件包:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

添加安装源并加到本地缓存:

sudo yum-config-manager --add-repo https://download.docker.com/linux/docker-ce.repo
sudo yum makecache fast

安装docker-ce并启动(加自启)

sudo yum install docker-ce
sudo systemctl start docker
sudo chkconfig docker on

docker官方的镜像服务基本跑不动,所以需要把镜像源改成国内的加速地址。改地址一般有两种方式(详细可参阅Docker 中国官方镜像加速),一是在pull镜像时,在前边加上加速地址的URL,比如要下载gitea/gitea:latest,就可以:

sudo docker pull registry.docker-cn.com/gitea/gitea:latest

或者还有种方式是更改/etc/docker/daemon.json文件,编辑为:

{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

这样就可以直接用:

sudo docker pull gitea/gitea:latest

来下载了。

这时等进度条走完,就已经下载好了Gitea的镜像,可以用:

sudo docker image ls

来查看系统里已有的镜像;这里会看到镜像会有个ImageID,这个下边有用。

新建一个目录,用于将容器内的存储映射到当前系统内:

sudo mkdir -p /var/lib/gitea

然后启动容器:

docker run -d --name=gitea -p 10022:22 -p 10080:3000 -v /var/lib/gitea:/data 737fb3dad067

其中-d参数是后台运行,-p参数是将容器内端口映射到系统端口(系统:容器内),-v参数是将容器内存储位置映射到系统相应位置(系统:容器内),最后一行ID是ImageID,以实际查到的为准(不写标签主要是防止服务器慢时重复下载,这里也可以直接写镜像URL直接下载启动)

打开192.168.1.10:10080,就可以看到WebUI了。

配置文件位置:/var/lib/gitea/gitea/conf/app.ini(配置项参考

配置后需要重启下容器:

sudo docker restart gitea