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

1591539271558

1591539235656

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')

本文由 hcb 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论