上一篇文章『十分钟入门Docker,带你成为Docker王者之篇四----Docker Compose』给大家讲了一下 如何通过Docker Compose,使用一行代码一次性启动多个Docker 容器。
这里说一下,微信小程序《六十四卦》大更新啦,有兴趣的同学可以通过下面的二维码体验一下。
前面洋洋洒洒的写了四篇系列文章,基本的 Docker 使用已经给大家说的差不多了。
那么好多同学肯定就特别好奇,学了Docker,到底能干啥????
能干啥???
干啥??
啥?
今天我们就来说一下,Django = Docker + PyCharm。超干货的哦~
0x00_啥是Django?
如果你是 Python 程序员,或者你玩 Python,那么你就肯定听过说 Django。
Django 是用 Python 语言编写的 Web 框架。很多知名的网站就是用 Django 搭建的。使用 Django,可以快速的搭建出来自己的网站。
现在最新版本是 2.2.5
;
官网地址:https://www.djangoproject.com/
;
快速这里地址:https://www.runoob.com/django/django-tutorial.html
。
如果是学习使用 Python 的同学,肯定多多少少都会遇到或者使用 Django 开发网站。那么,传统方法就是通过 virtualEnvironment 来搭建开发环境,每次开发都得将 environment activity,会非常麻烦。
既然我们学习了 Docker, 而且之前又介绍过:开发 Python 推荐的 IDE 是 PyCharm ,那么我们今天就用 PyCharm
和 Docker
来搭建我们 Django
开发环境!!!
0x01_Docker镜像下载
既然是要玩 Docker,我们就需要去下载镜像。这里,皮爷准备了一个 Docker Image ,
大家通过以下命令可以下载:
$ docker pull swyftg/dockerdjango:1.0
这个Image主要是集成的 Python 3.7
, Django 2.2.5
以及一些必要的组件。如果对 Image 的 DockerFile 感兴趣的话,可以去 GitHub 查看源码:
https://github.com/SwyftG/DockerLearn/tree/docker_django
下载成功之后,通过命令 $ docker images
可以查看到:
接下来我们就要配置我们的 PyCharm 了。
0x02_配置 PyCharm
由于 Windows 和 Mac 的 PyCharm 在配置 Python Interpreter
上有所不同,这里将会分开说。
Mac 配置
打开我们的 PyCharm。
首先我们得配置 Python Interpreter
。打开 File
--> Default Settings..
。 打开 Default Preferences
里面,左侧选中 Python Interpreter
:
点击第一个红框,然后选在Show All...
这里我们点击那个 +
号,来添加:
左边选择 Docker
,右边选择 New
:
因为我们本地是 Mac 系统,所以这里直接选择第一个就好 Docker For Mac
,然后点击确定:
这里我们看到,Image Name
一栏是可以选择了,我们直接选择刚才下载好的 Image: swyftg/dockerdjango:1.0
,然后点击 OK
:
这个界面我们看到 Project Interpreter
里面,就是我们的 Docker Image。然后点击 OK
就可以了。
Windows配置
打开 File
--> Settings..
。
左侧选中 Build, Execution, Deployment
--> Docker
:
这里配置好,然后在点击Project:xxxx
--> Project Interpreter
:
右上角选择添加,然后选择本地的 Docker 镜像即可:
这里,我们只是设置了 Python Interpreter
,要问这个东西是干嘛的?这个其实是你工程的解析器。
0x03_创建 Django 工程
使用 PyCharm , 创建我们的 Django 项目,这里有一点很诡的事儿就是,如果通过 PyCharm 创建项目,这里必须使用本地的解析器。不过不要紧,我们也可以从网上直接下载别人的 Django 代码,来编写执行。大家也可以下载皮爷在 GitHub 上分享的 Django 代码。我们这里就先用 PyCharm 创建一个 Django 项目。创建好项目结构应该是长这个样子的:
0x04_配置,转起来
项目创建好了,这个时候,我们需要首先设置项目的 Python Interpreter
为我们刚才创建的 "Docker Python Interpreter"。如果需要用这个运行的话,需要设置运行环境,在界面的右上角:
点击进入:
这里两点注意:
- 第一个红框,需要设置
Host
为0.0.0.0
- 第二个红框,选择我们刚刚创建的
Remote Python 3.7.4 Docker
然后点击 OK
按钮。然后我们点击运行按钮:
看到控制台里面打印的信息:
我们看到一个字符串 6a7ffeb62c0f
,这个其实就是 Docker 容器的 ID。我们在通过命令$ docker ps
来查看:
我们本地的 Docker 服务起来一个容器,这个容器使用的 Image 就是我们最初下载下来的 swyftg/dockerdjango:1.0
。
接着,我们在浏览器里面输入地址:http://127.0.0.1:8000/
看到这个界面,就说明你的 Django 跑起来了哦~~,在通过命令$ pip freeze | grep Django
查看一下我们本地是否装 Django:
结果本地没有安装,但是我们的 Django 却能跑起来。
这个是不是很神奇?? Django = PyCharm + Docker
皮爷在这里把 Django 代码修改了一些,然后也上传到了 GitHub 上面,其实代码就在那个 Image 里面。这个时候,你也可以运行一下那个 Image 来看一眼。通过命令:
$ docker run -t -i -p 8000:8000 swyftg/dockerdjango:1.0
这里的指令参数,都在之前的文章里面介绍过。
我们看到变成了下面这个样子:
然后浏览器里面再输入地址:http://127.0.0.1:8000/
怎么样?是不是觉得非常神奇。
0x05_到底能干啥?
可能有些小伙伴还是会很疑惑,这么做到底能干啥?有啥方便的?这么一看文章颇有点脱了裤子放屁的嫌疑。大家先不要喷,你顺着我的思路仔细想想哈:
既然你的PyCharm通过Docker Image能够跑起来你本机并且有配置过 Django 环境的 Django 程序,那么你也可以通过其他 Docker Image 来跑其他的未在你本地配置过环境的代码,比如机器学习啊。
0x06_練習します
今天又讲了一种 Docker 的实战使用,再次验证了Docker真的就是为所欲为了啊。后面的内容会给大家说 Docker 更高级的用法。
这么好评的干货文章,大家帮忙点个右下角的好看呗,你这么帅,不点好看怎么过去啊。
喜欢的可以关注公号『皮爷撸码』,回复『