使用docker-compose搭建个人博客网站solo

x33g5p2x  于2022-06-16 转载在 Docker  
字(2.0k)|赞(0)|评价(0)|浏览(625)

solo是一款开源的个人博客网站

官网的地址:
https://b3log.org/solo/

搭建步骤

开通一台云上的机器

准备一个域名指向这台机器的外网IP

准备docker-compose和docker环境

没有docker和docker-compose的环境的,可以根据自己的操作系统,准备好对应的环境

准备solo目录,将需要的文件都放在这个目录下

准备docker-compose.yml 文件

  1. version: "2"
  2. services:
  3. mysql:
  4. container_name: mysql
  5. image: mysql:5.7
  6. restart: always
  7. volumes:
  8. - ./mysql/data:/var/lib/mysql
  9. - ./mysql/init:/docker-entrypoint-initdb.d
  10. - /etc/localtime:/etc/localtime:ro
  11. ports:
  12. - "6603:3306"
  13. environment:
  14. MYSQL_ROOT_PASSWORD: "adminadmin"
  15. TZ: "Asia/Shanghai"
  16. command: --max_allowed_packet=32505856
  17. solo:
  18. container_name: solo
  19. image: b3log/solo:latest
  20. restart: always
  21. ports:
  22. - "8080:8080"
  23. environment:
  24. RUNTIME_DB: "MYSQL"
  25. JDBC_USERNAME: "root"
  26. JDBC_PASSWORD: "adminadmin"
  27. JDBC_DRIVER: "com.mysql.jdbc.Driver"
  28. JDBC_URL: "jdbc:mysql://mysql:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC"
  29. command: --listen_port=8080 --server_port=80 --server_scheme=http --server_host=taotao-java.com
  30. nginx:
  31. container_name: nginx
  32. image: nginx:latest
  33. restart: always
  34. ports:
  35. - "80:80"
  36. volumes:
  37. - "./nginx/conf:/etc/nginx/conf.d"
  38. - "./nginx/www/:/var/www/"

准备mysql目录下的文件

  1. CREATE DATABASE `solo` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  2. grant all PRIVILEGES on *.* to root@'%' identified by 'adminadmin';
  3. flush privileges;

准备Nginx文件

  1. gzip on;
  2. gzip_min_length 1k;
  3. gzip_buffers 4 16k;
  4. gzip_http_version 1.1;
  5. gzip_comp_level 2;
  6. gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
  7. gzip_vary on;
  8. gzip_proxied expired no-cache no-store private auth;
  9. gzip_disable "MSIE [1-6]\.";
  10. server_tokens off;
  11. access_log off;
  12. server {
  13. server_name solo.geexek.com;
  14. listen 80;
  15. location / {
  16. proxy_set_header X-Real-IP $remote_addr;
  17. proxy_set_header Host $http_host;
  18. proxy_pass http://solo:8080;
  19. }
  20. access_log /etc/nginx/conf.d/geexek.com.log;
  21. }

使用docker-compose启动服务

  1. docker-compose -f docker-compose.yml up -d

查看log日志

  1. docker logs -f solo

使用域名验证访问

http://solo.geexek.com

相关文章