docker相关知识以及qiandao 项目部署
注意
b.docker一键部署
自动下载,然后创建一个名字为qiandao2的文件夹,同时进行docker 挂载。
git clone https://github.com/AragonSnow/qiandao.git qiandao2
docker run -d --name qiandao2 -p 12346:80 -v $(pwd)/qiandao2:/usr/src/app asdaragon/qiandao
a.docker常用命令
docker restart qiandao --重启docker
docker stop qiandao --半闭docker
docker rm -v qiandao -- 删除docker
docker update --restart=always qiandao --启动docker时自动启动容器
docker images --显示有几个docker实例
docker ps --查看当前正在运行的docker
docker pull daocloud.io/fangzhengjin/qiandao -- 拉取镜像
systemctl enable docker -- 设置docker 服务项开机启动
1.diandao项目介绍
qiandao是一个自动签到的框架,可以借助于此每日打开各大网站,以前的教程提过相关介绍 。
2.下载qiandao的docker镜像
docker pull daocloud.io/fangzhengjin/qiandao
Using default tag: latest
Trying to pull repository daocloud.io/fangzhengjin/qiandao ...
latest: Pulling from daocloud.io/fangzhengjin/qiandao
89d9c30c1d48: Pull complete
8dfb98e486fe: Pull complete
a88cc9fc272b: Pull complete
bd421883ba8b: Pull complete
774bc95df625: Pull complete
431ae8c21cca: Pull complete
Digest: sha256:45a1592b907d5622a818d2d413ad00077a768cc49e1d818e8b3c1f37381cdf04
Status: Downloaded newer image for daocloud.io/fangzhengjin/qiandao:latest
查看当前docker镜像
[root@VM_0_17_centos ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
daocloud.io/fangzhengjin/qiandao latest 4ec12c0a5db6 6 months ago 302 MB
daocloud.io/fangzhengjin/qiandao <none> cfb142c4463c 23 months ago 281 MB
3.创建容器
创建一个端口号为9000的容器
docker run -d -p 9000:80 --name qiandao20200607 daocloud.io/fangzhengjin/qiandao
c20a61a67c189f637f594ee2508c0337b5c62c4ab406944f70a09a76f2311928
以下是设置始终重启里自动启动这个docker ,同时创建 docker的名字为qidandao20200608,
--restart=always表示机器启动时这个docker也会跟着重新启动。
docker run -d -p 9001:80 --name qiandao20200608 --restart=always -v /root/volume:/usr/src/app/volume daocloud.io/fangzhengjin/qiandao
2e27612188871122a53530ec9f6c9d2dac629cb9a56d7d43328068fa549c562b
查看当前运行的docker,同时进行启动docker
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2e2761218887 daocloud.io/fangzhengjin/qiandao "python /usr/src/a..." 2 minutes ago Up 2 minutes 0.0.0.0:9001->80/tcp qiandao20200608
c20a61a67c18 daocloud.io/fangzhengjin/qiandao "python /usr/src/a..." 5 minutes ago Up 5 minutes 0.0.0.0:9000->80/tcp qiandao20200607
[root@VM_0_17_centos ~]# docker start qiandao20200608
qiandao20200608
4.查看qiandao的网站
打开页面注册一个帐号
为了方便设置为管理员。
http://xxx.xxx.xxx.xxx:1231/register
5.删除多余的docker
通过docker ps查当前运行的docker ,如果有不要的则要先删除,删除之前要先停止,正在运行的docker无法被删除 ,
删除前必须先停止,当然停止了以后,网站首先打不开了。
nutes 0.0.0.0:9000->80/tcp qiandao20200607
[root@VM_0_17_centos ~]# docker rm -v qiandao 20200607
qiandao
Error response from daemon: No such container: 20200607
[root@VM_0_17_centos ~]# docker rm -v qiandao20200607
Error response from daemon: You cannot remove a running container c20a61a67c189f637f594ee2508c0337b5c62c4ab406944f70a09a76f2311928. Stop the container before attempting removal or use -f
[root@VM_0_17_centos ~]# docker stop qiandao20200607
qiandao20200607
[root@VM_0_17_centos ~]# docker rm -v qiandao20200607
qiandao20200607
[root@VM_0_17_centos ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2e2761218887 daocloud.io/fangzhengjin/qiandao "python /usr/src/a..." 12 minutes ago Up 12 minutes 0.0.0.0:9001->80/tcp qiandao20200608
mysql支持,
默认是sqlite ,但是每次copy来copy去,不方便管理 ,直接切换成mysql .
需要先创建好数据库,然后在配置文件中进行配置
config.py文件打开, 把下面代码的最后一行换成mysql就可以,启动时会自动创建
class mysql(object):
host = mysql_url.hostname or 'localhost'
port = mysql_url.port or '3306'
database = mysql_url.path[1:] or 'qiandao'
user = mysql_url.username or 'qiandao'
passwd = mysql_url.password or None
class sqlite3(object):
path = './config/database.db'
# 数据库类型,修改 sqlite3 为 mysql 使用 mysql
db_type = os.getenv('DB_TYPE', 'sqlite3')
还不快抢沙发