docker安装django mysql_nginx-uwsgi-django-mysql的docker部署(一)

用Django写了个小网站,准备往云主机上挂起来,用docker部署方便直接

架构上 准备 nginx一个dokcer,uwsgi和django一个docker,mysql一个docker。三个docker组网访问

先pull下来三个docker的官方镜像

docker pull nginx

docker pull mysql

docker pull ubuntu:14.4

pull下来如图

a88a16868e07

image.png

创建一个docker网络

docker network create -d bridge my-net

run ubunru 连接到my-net网络上 取名为magellan

docker run -itd --name=magellan --network my-net -p 8080:80 ubuntu:14.04 /bin/bash

run mysql 挂载主机的/root/docker_mysql_data卷为mysql的数据卷

docker run -d --name=my-sql --network my-net -p 33060:3306 -v /root/docker_mysql_data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=password mysql:latest

进入magellan 更换apt源

对于ubuntu14.04

deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

替换/etc/apt/sources.list

apt-get update

apt-get install python3-pip

apt-get install wget -y && apt-get install unzip -y

接下来下载好Django 安装好模块,配置好数据库,就可以run起来了

a88a16868e07

image.png

数据库的host 就是刚才配置的my-sql

wsgi 和django的连接

pip3 install uwsgi

Django自带了一个wsig.py, 直接运行uwsgi --http :8000 --wsgi-file wsgi.py。报错

ImportError: No module named 'magellan' 将wsgi.py换到项目下

nginx

dokcer run --name my-nginx --network my-net -v /root/www/nginx.conf:/etc/nginx/conf.d/magellan.conf -itd -p 80:80 nginx:latest /bin/bash

直接访问ip nginx 表示启动成功Welcome to nginx!

配置nginx文件

docker run -d --name=my-sql --network my-net -p 33060:3306 -v /usr/local/magellan/mysql_data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=4F1TaPHo6Khn988U mysql:latest

docker run -itd --name=my-magellan --dns 114.114.114.114 --network my-net -p 8080:8080 -v /usr/local/magellan/static:/usr/local/magellan/static -v /usr/local/magellan/media:/usr/local/magellan/media ubuntu:14.04

docker run -itd --name=my-nginx --dns 114.114.114.114 --network my-net -p 80:80 -v /usr/local/static:/usr/local/magellan/static -v /usr/local/media:/usr/local/magellan/media nginx:latest

superviso 守护 uwsgi

apt-get update

apt-get install curl

apt-get install vim

apt-get install python3

apt-get install python3-pip

pip3 install uwsgi

soc/magellan.log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值