根据dockerfile创建属于自己的镜像,利用dockercompose 运行django postgresql项目

目录:

1安装docker
2根据dockerfile requirement生成一个镜像
进入镜像 check镜像是否符合要求
3.在原有的镜像上添加功能
3.1利用dockerfile
3.2 进入镜像安装 之后commit
4 编写 docker-compose.yml
5 利用docker-compose 让主机里的代码使用该镜像运行
6 makemigrations和 makemigrate
7 浏览器通过外(公)网访问

1 安装 docker

先明确如果要在自己windows上来封装容器就下docker desktop。然后你可以本地做好容器commit到docker hub,在服务器上pull你自己做好的image就可以了。
直接上阿里云服务器封装就直接上服务器安装。给个传送门,讲的很清楚。
https://www.jianshu.com/p/f02d63ee98e0
如果还是没懂,具体怎么开始部署,那可以看我这个blog,我们从安装xshell开始
https://blog.csdn.net/weixin_41147129/article/details/104920735
win安装 docker desktop
安装前提:
1 那么首先检查电脑的虚拟化开启了没有:进入任务管理器(ctrl+alt+delete),点击性能->cpu ,查看虚拟化是否已启用,如果虚拟化是已禁用,那么你需要重启电脑进入bios开启虚拟化(我们的发的笔记本cpu都是支持虚拟化的,重启时进入bios按esc -> 再按f12 -> 去开启虚拟化)
在这里插入图片描述

开启虚拟化重启后,进入任务管理器看虚拟化是否已启用。
2
然后再是进入电脑的控制面板->程序->启用或关闭Windows功能->把Hyper-v勾上,启用后电脑会重启,后面就可以下载并安装Docker for Windows了。
在这里插入图片描述

Ps: Windows: 不建议系统是家庭版的用户 强行增加hyper-v,容易引起docker和虚拟机混乱。
Runtimeerror: 当pip和apt-get的时候遇到连接不上网络,urllib3 runtimeerror相关问题,建议换源 具体可上网查询 pip换源
给大家一个宝贝,DockerDesktop在官网下载实在太慢,太慢了,这里给出 docker Windows 的百度云资源链接
链接:https://pan.baidu.com/s/1KiEsAzz1gbeIhmZhfnSIYg
提取码:rmn8

2根据dockerfile requirement生成一个镜像

$ docker images

看现有镜像

$ docker ps

查看现有容器

$Vim requirement.txt  

#你需要在python里面装的包都可以放在requirement里面
requirment :
Django
zmq
django-registration
stripe
mysql
apscheduler==2.1.2
opencv-python

$vim dockerfile

Dockerfile:(这个文件名是固定的)

FROM python:3.6  
#3.6不用声明系统是ubuntu还是Windows ,python36可以跨平台
ENV PYTHONUNBUFFERED 1 
RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get -yq install sqlite3 && \
	rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
#如果是centos这两句就不用跑了,这两句是ubuntu的
#run后面是你要安装的东西 可以理解为在镜像里面run了这个指令
#可以把需要安装的包全部声明在requirement.txt里面也可以 run 一个个安装
RUN mkdir /code
#在你的镜像里创造一个文件夹
WORKDIR /code
#把镜像的工作地址设置为那个文件夹
ADD requirements.txt /code/
#把主机上的 requirement.txt添加到刚刚创立的文件夹里面
RUN pip install -r requirements.txt  #运行根据requirement.txt安装
ADD . /code/
#把当前目录的内容添加到code文件夹里

这和上面的内容是一样的,上面是为了方便你看。
FROM python:3.6
#3.6不用声明系统是ubuntu还是Windows ,python36可以跨平台
ENV PYTHONUNBUFFERED 1
RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get -yq install sqlite3 &&
rm -rf /var/lib/apt/lists/* /tmp/

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 Docker Compose 来部署 Django 项目,以下是一些简单的步骤: 1. 创建一个 Dockerfile 文件,指定基础镜像项目文件的拷贝方式。例如: ``` FROM python:3.8 ENV PYTHONUNBUFFERED 1 RUN mkdir /code WORKDIR /code COPY requirements.txt /code/ RUN pip install -r requirements.txt COPY . /code/ ``` 2. 创建一个 docker-compose.yml 文件,定义服务和它们的配置。例如: ``` version: '3' services: db: image: postgres environment: POSTGRES_DB: myproject POSTGRES_USER: myprojectuser POSTGRES_PASSWORD: myprojectpassword web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: - .:/code ports: - "8000:8000" depends_on: - db ``` 在这个例子中,我们定义了两个服务:一个是数据库服务,另一个是 Django Web 服务。我们使用 Postgres 镜像来作为数据库,并且指定了环境变量来设置数据库的名字、用户名和密码。在 Web 服务中,我们指定了 Dockerfile 的路径,以及运行 Django 服务器的命令和端口映射。同时,我们还指定了这个服务依赖于数据库服务。 3. 运行 docker-compose 命令来启动服务。例如: ``` docker-compose up ``` 这个命令会自动构建镜像创建容器并启动服务。你可以在浏览器中访问 `http://localhost:8000` 来查看 Django 项目。 这只是一个简单的例子,你可能需要根据自己的项目结构和需求来做一些调整。但是,使用 Docker Compose 部署 Django 项目可以简化部署流程,并且可以方便地在不同环境中部署和迁移。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值