赞
踩
本章将在本地搭建一个容器化的 Django 项目,感受 Docker 的运作方式。
虽然有基于 Windows 的 Docker 版本,但各方面兼容做得都不太好(安装也麻烦些),因此建议读者在学习前,自行安装好 Linux 或 Mac 系统。当然你愿意折腾的话,在 Windows 上搞也行。
别担心,以后开发 Django 项目仍然可以在 Windows 下进行,仅仅是开发时不使用 Docker 而已。
准备就绪后就继续下一步吧。
打开 Linux/Mac 的终端,安装 Django 库:
$ pip install django==2.2
在一个你喜欢得位置(比如/home/)创建新的 Django 项目:
$ django-admin startproject django_app
进入项目根目录:
$ cd django_app
教程后面的内容全部都在此目录中操作了。为方便阅读,命令提示符 $
代表目前在项目根目录 django_app/
,mysql $
则代表目前在目录 django_app/mysql/
中,请读者操作时稍加留意当前的工作目录。
然后迁移数据:
$ python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
...
Applying sessions.0001_initial... OK
准备工作就搞定了。
Docker 的整个生命周期由三部分组成:镜像(image)+ 容器(container)+ 仓库(repository)。
容器是由镜像实例化而来,这有点像面向对象的概念:镜像就是类,容器是类实例化之后的对象。
镜像是一个只读的模板,它包括了运行容器所需的数据。镜像可以包含一个完整的 Linux 操作环境,里面仅安装了 Python 或者其他用户需要的程序。
容器是由镜像创建出来的实例,类似虚拟机,里面可以运行特定的应用,并且容器与容器是相互隔离的。
仓库概念与 Git 和 Github 类似,如果你用过它们就非常容易理解。Docker 使用的默认仓库是由官方维护的 Docker hub 公共仓库,从中上传、拉取的操作类似 Git。
目前需要了解的就这么多,下面通过实践来理解。
为了确认 Docker 已经正确安装了,运行以下指令:
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
...
latest: Pulling from library/hello-world
1b930d010525: Pull complete
...
Hello from Docker!
This me
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。