把blog移植到了docker上
没必要,但是,生命在于折腾。
blog是用的typecho,标准的lnmp了,基本上别的lnmp网站都是这样的。
docker-compose.yml:
version: '3'
services:
nginx:
image: nginx:latest
ports:
- "80:80" 暴露http/https出去
- "443:443"
volumes:
- ./nginx:/etc/nginx/ apt和docker一致,/etc/nginx
- ./www:/var/www
- ./letsencrypt:/etc/letsencrypt/
networks:
- blog
restart: always
php:
image: php:8.2-fpm
command: bash -c "docker-php-ext-install pdo_mysql && php-fpm" 原始的docker没mysqli
volumes:
- ./fpm/www.conf:/usr/local/etc/php-fpm.d/www.conf apt的是/etc/php/8.2/fpm/xxxxx 这样的
- ./www:/var/www
networks:
- blog
restart: always
mariadb: mysql不好玩,用mariadb
ports:
- "127.0.0.1:3306:3306" 方便在宿主机上操作数据库,只宿主机可访问,不对外
image: mariadb:latest
environment:
MYSQL_ROOT_PASSWORD: 123456
volumes:
- ./mariadb:/var/lib/mysql
networks:
- blog
restart: always
networks:
blog:
driver: bridge
然后修改一下typecho中的config.php的数据库连接就好。一个小麻烦是先前数据库是unix socks访问,需要改成tcp,还需要root可以远程访问,因为php和mysql算是远程了。