使用docker搭建青龙面板教程
青龙面板是一款用于管理和运行脚本的web界面,广泛应用于各类自动化脚本的管理。使用docker可以方便地搭建青龙面板,并且保持环境的一致性。下面是使用docker搭建青龙面板的详细步骤。
方式1:使用docker命令安装
步骤1:安装docker
在开始之前,首先需要在服务器上安装docker。您可以参考之前的教程,根据您的操作系统版本和需求安装docker。
步骤2:拉取青龙面板镜像
使用以下命令从docker hub上拉取青龙面板的docker镜像。
docker pull whyour/qinglong:latest
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tsqga3zk-1682420649518)(d:\个人文件\csdn博客\博客图片资源\image-20230425181346017.png)]](https://images.3wcode.com/3wcode/20240728/b_0_202407282102456903.png)
步骤3:创建青龙面板容器
使用以下命令创建一个新的docker容器,并设置必要的环境变量和端口映射。
docker run -dit \
-v /home/docker/ql/config:/ql/config \
-v /home/docker/ql/log:/ql/log \
-v /home/docker/ql/db:/ql/db \
-p 5700:5700 \
--name qinglong \
--hostname qinglong \
whyour/qinglong:latest
以上命令将创建一个名为qinglong的docker容器,并将青龙面板的配置文件、日志和数据库等数据挂载到本地目录,同时将容器的5700端口映射到主机的5700端口。
在docker命令中,-v $pwd/ql/config:/ql/config 是用来将本地目录 $pwd/ql/config 挂载到容器内的 /ql/config 目录。
$pwd 是一个环境变量,表示当前工作目录,即执行 docker 命令时所在的目录。因此,$pwd/ql/config 表示当前工作目录下的 ql/config 目录。
具体而言,在这个命令中,本地目录 $pwd/ql/config 是指当前工作目录下的 ql/config 目录,它会被挂载到 docker 容器内的 /ql/config 目录,实现容器和宿主机之间的文件共享。
例如,如果您在 centos 7 下执行这个 docker 命令,并且当前工作目录是 /home/user,那么 $pwd/ql/config 将指向 /home/user/ql/config 目录。这个命令会将 /home/user/ql/config 目录挂载到 docker 容器内的 /ql/config 目录,从而实现容器和宿主机之间的文件共享。

通过docker ps -a查看正在运行的容器,可以看到刚才创建的青龙面板容器

步骤4:访问青龙面板
现在可以通过浏览器访问青龙面板了。在浏览器中输入http://<服务器ip地址>:5700,即可访问青龙面板的web界面。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nh1b68o0-1682420649520)(d:\个人文件\csdn博客\博客图片资源\image-20230425181755169.png)]](https://images.3wcode.com/3wcode/20240728/b_0_202407282102493272.png)
步骤5:配置青龙面板
首次访问青龙面板时,需要进行初始化配置。按照界面上的提示,设置管理员用户名和密码等信息,并点击"确认"按钮完成配置。
1.通知设置暂时跳过
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4ewfe9rv-1682420649521)(d:\个人文件\csdn博客\博客图片资源\image-20230425183816806.png)]](https://images.3wcode.com/3wcode/20240728/b_0_202407282102525569.jpg)
2.设置用户名和密码
3.登录青龙面板
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eutknx2n-1682420649521)(d:\个人文件\csdn博客\博客图片资源\image-20230425183915306.png)]](https://images.3wcode.com/3wcode/20240728/b_0_202407282102546952.jpg)

步骤6:使用青龙面板
现在可以在青龙面板中添加脚本、管理任务等,以便于进行自动化操作。通过界面提供的功能,您可以轻松地管理和运行各种脚本。
方式2:使用docker-compose安装
步骤1:创建docker-compose.yml文件
我们在 /home/docker/ql/目录(先创建)下创建一个名为 docker-compose.yml 的文件,作为 docker compose 的配置文件。



使用文本编辑器(如 nano 或 vim)打开 docker-compose.yml 文件,并添加以下内容:
version: '3'
services:
ql:
image: whyour/qinglong:latest
container_name: ql
restart: always
ports:
- "5700:5700"
volumes:
- /home/docker/ql/config:/ql/config
- /home/docker/ql/db:/ql/db
- /home/docker/ql/repo:/ql/repo
environment:
- enable_hangup=true
- enable_web_panel=true
- enable_tg_bot=false
- enable_docker=true
- puid=<puid>
- pgid=<pgid>
这段配置内容的解释如下:
version: 指定 docker compose 文件的版本,这里使用的是3版本。services: 定义了一个名为ql的服务,这个服务对应着青龙面板的容器。image: 指定了青龙面板容器使用的镜像,这里使用的是whyour/qinglong:latest,latest表示使用最新版本的青龙面板镜像。container_name: 指定容器的名称,这里设置为ql。restart: 指定容器的重启策略,这里设置为always,表示容器会自动在退出时重新启动。ports: 定义了容器的端口映射关系,将容器的5700端口映射到主机的5700端口,允许通过主机的5700端口访问青龙面板。volumes: 定义了容器和主机之间的挂载卷关系,将主机上的/home/docker/ql/config、/home/docker/ql/db和/home/docker/ql/repo目录分别挂载到容器内的/ql/config、/ql/db和/ql/repo目录,用于持久化存储青龙面板的配置文件、数据库和仓库数据。environment: 定义了容器的环境变量,包括了青龙面板的一些配置参数,如enable_hangup、enable_web_panel、enable_tg_bot、enable_docker、puid和pgid等。
请注意,在使用这个 docker-compose.yml 文件时,需要根据您的实际情况修改挂载卷和环境变量的配置,确保其与您的系统环境和需求相符。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9zx1pukc-1682420649524)(d:\个人文件\csdn博客\博客图片资源\image-20230425185911093.png)]
按esc或者ctrl+c退出编辑模式,再输入 冒号wq:wq保存并退出


步骤2:启动青龙面板容器
在 docker-compose.yml 文件所在的目录下,使用以下命令启动青龙面板容器:
docker-compose up -d
这将会启动一个后台运行的 docker 容器,并根据配置文件中的设置,下载青龙面板的镜像并创建容器。

通过docker ps -a查看创建的容器
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-azmogkra-1682420649526)(d:\个人文件\csdn博客\博客图片资源\image-20230425190307323.png)]](https://images.3wcode.com/3wcode/20240728/b_0_202407282103044432.jpg)
步骤3:访问青龙面板
一旦容器启动成功,您可以通过浏览器访问青龙面板的 web 页面。默认情况下,青龙面板会在容器的 5700 端口上监听,后续设置步骤和之前一样。
使用 docker 删除已创建的容器
- 首先,通过
docker ps -a命令列出所有已经创建的容器,包括处于运行中和已停止的容器。 - 找到您想要删除的容器的容器 id 或容器名称。
- 使用以下命令删除指定的容器,其中
<container_id>或<container_name>替换为您想要删除的容器的容器 id 或容器名称:sh docker rm <container_id> 或 docker rm <container_name>例如:sh docker rm 1a2b3c4d5e6f 或 docker rm my_container - 如果容器正在运行,将无法直接删除。此时可以使用
-f参数强制删除容器,例如:sh docker rm -f <container_id> 或 docker rm -f <container_name>注意:使用-f参数将会强制停止并删除容器,慎用该选项。 - 删除容器后,可以使用
docker ps -a命令再次验证容器是否已被成功删除。

发表评论