* 操作系统:CentOS 7.6 64bit
* 服务器规格:CPU【1核】 内存【2GB】
* 磁盘:系统盘60GB
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum -y install docker-ce
cat /etc/docker/deamon.json
cd /etc/docker/
touch deamon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl stop docker
systemctl enable docker
docker network create --subnet=172.172.0.0/24 --gateway 172.172.0.1 docker-mynet
docker run -p 9000:9000 --net docker-mynet --ip 172.172.0.3 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /soft/docker/portainer/data:/data -v /soft/docker/portainer/public:/public -d portainer/portainer
运行此命令会帮我们自动pull portainer:latest 镜像,等待容器启动完成
--net docker-mynet
指定网段
--ip 172.172.0.3
指定ip 服务器启动后不会发生改变
--restart=always
随着docker 启动而启动
CONTAINER ID
IMAGE
COMMAND
CREATED
STATUS
PORTS
NAMES
31c9a09bbd4d
portainer/portainer
"/portainer"
About a minute ago
Up About a minute
0.0.0.0:9000->9000/tcp, :::9000->9000/tcp
portainer
-v /soft/docker/portainer/public:/public
将portainer的页面文件夹挂载在宿主机的/soft/docker/portainer/public目录下了,而且是个空文件夹,所以无法访问https://files-cdn.cnblogs.com/files/blogs/680867/Portainer-CN.zip
使用上面的地址下载汉化文件,放置在/soft/docker/portainer/public 并解压
使用
docker restart portainer
后,使用ip:9000即可访问(前提是要设置centos防火墙)
-v /var/run/docker.sock:/var/run/docker.sock
,点击连接即可)点击左侧容器我们可以看到有一个容器,也就是我们刚刚创建的portainer容器。
我们可以发现此容器的创建时间,以及ip等相关信息。也可以对此容器进行删除,重启等一系列操作(避免shell 命令),点击红圈图标可以查看容器日志,绿圈图标可以进入容器环境中(如进入容器对mysql进行配置等)。
docker run --name mysql --restart=always -p 13306:3306 --ip 172.172.0.5 --net docker-mynet -v /soft/docker/database/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=password -d mysql
mysql 端口为:13306(防止服务器被攻击)设置密码为:password (请自行更改)
进入mysql 容器
docker exec -it mysql bash
登录mysql
mysql -u root -p
使用mysql 数据库
use mysql;
配置权限并刷新:
ALTER USER 'root'@'%' I:DENTIFIED WITH mysql_native_password BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;
省略
docker run -p 10022:22 -p 3000:3000 --name=gogs --net docker-mynet --ip 172.172.0.11 --restart=always -e TZ="Asia/Shanghai" -v /soft/docker/gogs:/data -d gogs/gogs
安装完毕后可以访问ip:3000 来访问gogs容器的首次安装页面
如果安装完毕后,将容器重启后,会发现再次访问ip:3000会无法访问(不一定会遇到)
进入gogs的宿主机挂载目录
/soft/docker/gogs/gogs/conf
修改app.ini,再次解决即可解决
docker run -v /soft/docker/drone:/data --net docker-mynet --ip 172.172.0.12 -e DRONE_AGENTS_ENABLED=true -e DRONE_GOGS_SERVER=http://ip:3000 -e DRONE_RPC_SECRET=dronerpc666 -e DRONE_SERVER_HOST=ip:3080 -e DRONE_SERVER_PROTO=http -e DRONE_USER_CREATE=username:demon471,admin:true -e TZ="Asia/Shanghai" -p 3080:80 --restart=always --detach=true --name=drone drone/drone
-e DRONE_GOGS_SERVER=http://ip:3000
此处为gogs的访问地址
-e DRONE_RPC_SECRET=dronerpc666
dronerpc666 非固定但是部署drone-runner-docker 需要一个参数一致
-e DRONE_SERVER_HOST=ip:3080
配置drone的访问地址
-e DRONE_USER_CREATE=username:demon471,admin:true
设置管理员账号最好和gogs的管理员一致(也可以自作更改)
docker run -d -v /var/run/docker.sock:/var/run/docker.sock --net docker-mynet --ip 172.172.0.13 -e DRONE_RPC_PROTO=http -e DRONE_RPC_HOST=ip:3080 -e DRONE_RPC_SECRET=dronerpc666 -e DRONE_RUNNER_CAPACITY=2 -e DRONE_RUNNER_NAME=runner-docker -e TZ="Asia/Shanghai" -p 3000:3000 --restart always --name runner-docker drone/drone-runner-docker
-e DRONE_RPC_HOST=ip:3080
drone的访问地址
-e DRONE_RPC_PROTO=http
有证书可以是https
-e DRONE_RPC_SECRET=dronerpc666
需要和drone的配置一样
查看地址:https://blog-static.cnblogs.com/files/blogs/680867/.drone_yml.css
其中 ssh_password需要在drone中的项目配置
查看地址:https://blog-static.cnblogs.com/files/blogs/680867/Dockerfile.css
查看地址:https://files-cdn.cnblogs.com/files/blogs/680867/run.sh
待所有的文件都可以提交至gogs中就可以测试打包
打包成功内容
我们可以针对于项目webhook方式来进行打包与否,如有提交就打包等等。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章