docker(django+mysql)部署,解决多项目环境问题

docker下项目容器配合mysql容器部署

1.镜像传输

1. docker save -o mysql.tar(保存镜像文件别名) mysql:5.7(镜像名)
2. docker load -i mysql.tar(目标地址镜像加载)
3. scp mysql.tar  root@ip:/opt/(目标地址镜像传输指定文件夹)

2.docker 自定义局域网

docker network create  my_net(自定义网络名称)

3. mysql 自定义网络下启动

docker run -d --name mysql --network my_net --network-alias mysql -v /home/zhouyunpeng/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
参数说明:
      -d 后台运行
      --network 声明所在网络
      --network-alias mysql在自定义网络中的别名
      -v 数据持久化(/my/own/datadir:/var/lib/mysql)
      -e 环境变量

3.1 进入mysql 容器添加项目所使用的数据库

docker exec -it some-mysql bash
   >>mysql -uroot -p
   >>create database demo charset=utf8;

4.python环境与项目同局域网下启动

docker run --name ddsx -network my_net -p 8000:9000 -d ddsx

5.项目dockerfile制作

FROM b0dee8d708b9
COPY ./ddsx /opt/ddsx/
WORKDIR /opt/ddsx/
RUN pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple
COPY ./operations.py /usr/local/lib/python3.7/site-packages/django/db/backends/mysql/operations.py
EXPOSE 9000
CMD ["python","manage.py","runserver","0.0.0.0:9000"]

6.进入项目容器迁移数据库

docker exec -it programe bash
>>python manage.py check
>>python manage.py makemigrations app01
>>python manage.py makemigrations app02
>>python manage.py migrate

docker(django+mysql)部署,解决多项目环境问题

上一篇:OGR 写点线面对象和单独的dbf文件


下一篇:mysql