容器部署路飞学城项目-已迁移

常用命令

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



docker-compose logs -f --tail 20

docker-compose logs --tail 20 [容器名称]


docker-compose logs --tail 20 api1

删除当前目录下的所有的容器并重新创建
docker-compose up --force-recreate

删除当前目录下的所有的容器并重新创建,--remove-orphans强制删除之前遗留(rm删不掉的)的容器
docker-compose up --force-recreate --remove-orphans

docker exec -it mysql_master mysql -uroot -proot2022

docker exec -it redis_master redis-cli -a 123456

docker exec -it nginx /bin/bash
docker exec -it api1 /bin/bash


前端是 py1.rrrrco.fit
后端是	py2.rrrrco.fit/home/nav/header/


uwsgi --http :8006 --workers 4 --master --enable-threads -b 32768 --module luffycityapi.wsgi

常见报错

invalid request block size: 21573 (max 4096)...skip

ubuntu20.04云服务器

如果你是以uwsgi.ini文件启动的话报这个错误,那么你可以在uwsgi.ini文件中添加:

[uwsgi]

buffer-size=65535

如果是命令行启动的:

# 在下面的命令中添加 -b 参数
# before
uwsgi --socket :8000 --workers 4 --master --enable-threads --module luffycityapi.wsgi

# after
uwsgi --socket :8000 --workers 4 --master --enable-threads -b 65535 --module luffycityapi.wsgi

nginx配置文件挂载失败

docker-compose中,指定volumes挂载,将本地的nginx的web.conf配置文件,挂载到容器中的nginx配置文件中,但是访问仍然是nginx的欢迎页面,说明我们挂载的配置文件没有生效。

version: '3.8'
services:
  nginx:
    image: nginx:1.21.4
    restart: always
    ports:
      - "80:80"
    container_name: "nginx"
    volumes:
        - ./luffycityweb:/home/luffycityweb
        - /home/luffycity/conf/nginx/web.conf:/etc/nginx/conf.d/nginx.conf
    networks:
        - default
networks:
  default:

上面这么配置不生效,容器中不生效,进入容器发现,有两个配置文件,而default.conf配置文件也监听了80端口,导致我们外部访问80端口,没有按照预期走我们期望的nginx.conf,而是走了默认的default.conf,它也监听了80端口,返回了nginx欢迎页,这就是我们网站访问80端口为啥出现nginx欢迎页的原因。

root@c7406994da7b:/home# ls /etc/nginx/conf.d/
default.conf  nginx.conf

解决办法也很简单,容器中的default.conf配置文件不是优先级高么,我干脆挂载时,让宿主机的web.conf配置文件覆盖掉容器中的default.conf配置文件,就ok了。

version: '3.8'
services:
  nginx:
    image: nginx:1.21.4
    restart: always
    ports:
      - "80:80"
    container_name: "nginx"
    volumes:
        - ./luffycityweb:/home/luffycityweb
        - /home/luffycity/conf/nginx/web.conf:/etc/nginx/conf.d/default.conf
    networks:
        - default
networks:
  default:

然后重新启动容器,就ok了。

posted @ 2023-07-23 19:55  听雨危楼  阅读(16)  评论(0)    收藏  举报