安装完docker之后需要准备一下安装halo需要用到的其他的容器
新建一个docker的网络
因为docker默认的bridge网络是不支持指定ip的,为了后面使用nginx进行反向代理,所以需要先新建一个bridge网络。可以使用docker中的network命令来创建:
sudo docker network create -d bridge --subnet 172.19.0.0/16 mynet
使用上面的命令就可以创建一个名称为mynet的bridge自定义网络了,该网络使用的是172.19.0.0/16的子网,可以分配的网络地址为172.19.0.1-172.19.255.254
准备nginx容器
可以通过下面的docker hub来查找自己需要的版本 docker nginx
目前有这些版本:
我使用的是latest 也就是当前的1.19.1
首先使用pull命令来拉取镜像
sudo docker pull nginx:latest
然后等待拉取完成即可
之后新建nginx容器
使用run命令新建
sudo docker run --name nginx --network=mynet --ip=172.19.0.10 -p 80:80 -p 443:443 nginx:latest
80是http端口,443是https端口
准备mysql容器
如果要是使用halo自带的h2数据库的话就不需要准备mysql了。
我在这里使用的是mysql的一个分支mariadb
可以通过docker hub来查找需要的版本 docker mariadb
首先拉取镜像
sudo docker pull mariadb:latest
等待拉取完成即可
然后使用docker run命令新建容器
sudo docker run --name mariadb --network=mynet --ip=172.19.0.11 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw mariadb:latest
my-secret-pw更换成自己想要设置的密码即可
3306端口映射到3307是为了防止与本地安装的mysql冲突
准备过程大概就是这些
如果您在观看过程中发现问题的话,欢迎指正