docker入门
docker是一种半虚拟化技术,他并不像虚拟机一样从底层完整的虚拟出一台电脑,只是虚拟出必要的运行环境,非常适用于解决兼容性,并且docker并不需要安装依赖,非常适合一些需要安装依赖的仓库,此外docker部署非常迅速快捷,仅次于一键脚本。
首先了解几个基本概念:
容器、镜像、映射、nat网络
容器通常与镜像一起,可以简单理解为安卓的app和安装包或者windows的exe程序和install程序。
映射:半虚拟化也是属于虚拟化,所以肯定要相对独立于宿主机环境,映射类似于linux端口开放,简单来说就是连接宿主机与容器,docker映射的语法就是宿主机:容器,例如我需要将容器的8080端口映射到宿主机的8080端口那就是8080:8080,路径也是同理。
网络:docker默认的网络模式有bridge桥接、host、null
桥接模式是nat网络模式,ip地址中有三类私有ip
10.0.0.0/18
172.16.0.0/12
192.168.0.0/16
docker默认分配的bridge网络就是b类172网段,他们与宿主机直接网络经过nat转换连接起来,所以使用qbit这种bt类的service的时候效率会不怎么好。
host网络模式是容器直接使用宿主机网络
null则是不使用
概念性的东西知道就好
docker部署都是先拉取镜像再安装
linuxserver/qbittorrent,这是一个qbit的镜像,linuxserver代表着他的作者,qbit代表着他是哪一个镜像,使用docker pull linuxserver/qbittorrent 即可将镜像拉取到本地,这就相当于把安装包下载到了本地,通过docker面板什么的我们可以使用镜像来部署容器,例如openwrt的docker部署面板,我只需选中镜像然后映射好文件夹,以及网络设置就可以直接使用。
docker run -itd --network=host \
-v $PWD/db/:/etc/x-ui/ \
-v $PWD/cert/:/root/cert/ \
--name x-ui --restart=unless-stopped \
enwaiax/x-ui:latest
这是命令行直接部署xui的docker命令,这个可以用于命令行,也可用于部署面板的cli解析,需要做好的就是-v将存储路径映射好。
Docker Compose另一种docker部署方式,首先你需要在你需要的目录下touch一个docker-compose.yml文件,写入配置再使用docker-compose up 命令运行他。大致流程就是这样。
注:自己多部署几遍docker思路就会清晰了