HowTo文档
如何在 XSwitch Docker 镜像中添加你需要的东西
XSwitch 主打定制,因此,量身定作定制一个你需要的 Docker 镜像也是 XSwitch 必备的功能。
我们以如何在 XSwitch 中使用 Edge TTS这篇文章为例。考虑到 Docker 镜像的大小,我们并没有将edge-tts
内置到通用版的 Docker 镜像中。这样,用户在使用时就需要自行安装。如果 Docker 镜像重启,就又需要重新安装,有时候这不是你期望的,下面,我们带你实现你自己的 Docker 镜像。
docker commit
最简单的方法就是通过docker commit
制作自己的镜像。执行如下命令:
make bash # 进入XSwitch容器 apt-get update # 更新Linux软件源数据 apt-get install python3-pip # 安装Python pip pip install edge-tts # 安装edge-tts
按Ctrl + D
退出容器,在外面执行:
docker commit xswitch my-xswitch:v1.0
然后,你就有了自己的镜像了。修改docker-compose.yml
,将image:
换成你自己的镜像,如:
image: my-xswitch:v1.0
然后重启 Docker 就可以了。在此,直接执行make up
就行,不需要先make down
,因为.yml
文件变了容器会自动重建。
以后,再也不用每次都重装edge-tts
了。
关于dockcer commit
更多的用法可以参考这里 。
docker build
当然,你也可以使用经典的docker build
来做这个事情,先写一个Dockerfile
,内容如下:
FROM ccr.ccs.tencentyun.com/free/xswitch-lua-js-free:4.0.2 RUN apt-get update && apt-get install python3-pip && pip install edge-tts
然后在命令行上直接执行如下命令 build 你自己的镜像:
docker build -t my-xswitch:1.0 .
其中-t
指定镜像的名字和标签。
殊途同归。关于docker build
更多解释见这里 。
内网
怎么把 Docker 镜像复制到你的内网上呢?也很简单,记住以下两个命令就好了:
docker save docker import
如果不清楚这两个命令怎么用,可以查询 Docker 命令手册,这个,作为课后作业吧 :)。