十分钟入门Docker,带你成为Docker王者之篇五——Docker + PyCharm = Django

3,549 阅读5分钟

上一篇文章『十分钟入门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 ,那么我们今天就用 PyCharmDocker 来搭建我们 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"。如果需要用这个运行的话,需要设置运行环境,在界面的右上角:

点击进入:

这里两点注意:

  • 第一个红框,需要设置 Host0.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 更高级的用法。

这么好评的干货文章,大家帮忙点个右下角的好看呗,你这么帅,不点好看怎么过去啊。

喜欢的可以关注公号『皮爷撸码』,回复『

代码
』,其中
DC001
就是 Docker 系列的代码,大家可以学习一下。