Docker概念docker是一种容器技术,用于创建独立的软件容器。属于操作系统虚拟化技术,隔离进程独立于主机和其他隔离进程。
Docker容器对比虚拟机虚拟机:需要有必要的二进制库和完整的操作系统,并占用所有预先分配的资源。
Docker容器:与主机共享操作系统,可以实现资源的动态分配,在用户空间作为单独的进程运行。
Docker镜像、容器和仓库镜像是文件,容器是流程;它们之间的关系就像类和实例化对象之间的关系。一个类可以有多个实例化的对象。仓库是一种存储和分发图像的服务。Docker pull是从仓库下载Docker镜像到本地,docker run是创建一个容器并运行一个命令,docker exec -是在运行的容器中执行命令。
Docker安装根据自己的系统docker安装选择安装方法
Docker使用1。简单试试:用docker pull nginx:latest下载最新的nginx镜像。
2.使用Docker run --name my-nginx -p 80:80 -d nginx:latest命令创建一个容器。命令为my-nginx,-d表示后台操作并返回容器的ID,-p指定端口为主机的80端口。打开浏览器访问端口80。
3.使用docker exec -it my-nginx bash命令打开交互模式终端。
第一步不是必须的。当执行docker run命令时,如果找不到镜像,将自动从仓库中提取镜像。
Docker常用命令命令操作docker pull从仓库下载映像docker映像查看所有本地映像docker rmi删除映像docker run创建容器并执行命令docker rm删除容器docker stop停止容器,同样,重新启动和启动docker日志查看容器日志docker exec bash进入容器并执行其他命令。
最基本的django的单容器部署尽量部署最基本的django项目。
创建django项目
进入命令行django-admin启动项目我的站点,进入创建的django文件夹,我们可以看到整个项目结构。
此时,我需要在项目的根目录下创建一个Dockerfile文件,用来生成docker镜像,内容如下
#从python构建python3.7环境:3.7#镜像作者维护者LALALA#设置python环境变量ENV PYTHONUNBUFFERED 1#设置pip源码为国产源码copypip.conf/root/。pip/pip.conf #创建mysite文件夹runmkdir -p/var/www/html/my site #设置容器中的工作目录WORKDIR /var/www/html/mysite#将当前目录文件添加到容器的工作目录(。表示当前主机目录)添加。/var/www/html/mysite# Pip安装依赖于运行pipi install -r requirements . txt .继续在项目的根目录下创建pip.conf文件来修改Pip图像源。
dockerfile中的第一行来自python:3.7,这意味着python:3.7的映像将在创建过程中从docker存储库中取出。如果速度太慢,请修改你的docker图片来源,可以直接在https://b2bk1nge.mirror.aliyuncs.com Docker界面修改。
输入命令docker run -it -d -p 80:8000 --name my site Django _ docker _ img:v1创建并运行容器。这个名称将容器映射到本地端口80,并使用docker ps来检查操作。然后使用docker exec -it mysite bash命令进入容器,你会发现你现在位于Dockerfile中设置的工作目录中。这个目录中的内容就是项目文件的内容,pip安装了requirement.txt中的依赖项。
最后,在容器的bash中执行以下命令,完成数据库迁移并运行django项目。
Python管理。PyMakeMigration Spythonmanage。PyMigrate Python管理器。pyron server 0.0.0:8000 #一定要写0 . 0 . 0。如果127.0.0.1是容器的环回地址,它将使主机无法访问它。此时在浏览器中访问http://127.0.0。
这篇总结文章主要尝试使用docker部署项目,学习过程中有一些漏洞。目前使用docker安装镜像非常方便。之前在安装所需软件时,经常会遇到各种小bug。使用docker后,我们只需要简单的拉一下图像创建容器,两行命令就解决了所有的麻烦。
评论前必须登录!
注册