《Django开发教程》1.1 安装django Docker

以下是在MAC上操作,其他系统类似,需要替换对应命令
参考:https://hub.docker.com/_/django

安装Docker

# brew install --cask --appdir=/Applications docker

下面表示安装成功:

==> Downloading https://desktop.docker.com/mac/main/amd64/78998/Docker.dmg
Already downloaded: /Users/ksuser/Library/Caches/Homebrew/downloads/e5ae7e77584e89d32fa9b0b96db83f3378f9b8196ef004fe0914a32d75504ce4--Docker.dmg
==> Installing Cask docker
==> Moving App 'Docker.app' to '/Applications/Docker.app'
==> Linking Binary 'docker-compose.bash-completion' to '/usr/local/etc/bash_completion.d/docker-compose'
==> Linking Binary 'docker.zsh-completion' to '/usr/local/share/zsh/site-functions/_docker'
==> Linking Binary 'docker.fish-completion' to '/usr/local/share/fish/vendor_completions.d/docker.fish'
==> Linking Binary 'docker-compose.fish-completion' to '/usr/local/share/fish/vendor_completions.d/docker-compose.fish'
==> Linking Binary 'docker-compose.zsh-completion' to '/usr/local/share/zsh/site-functions/_docker_compose'
==> Linking Binary 'docker.bash-completion' to '/usr/local/etc/bash_completion.d/docker'
🍺  docker was successfully installed!

在Applications找到并打开:

image.png

桌面上面任务栏找到这个:


image.png

打开官网:https://hub.docker.com/

搜索django


image.png
$ docker pull django
Using default tag: latest
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

这个报错是docker服务未启动。

方法 1 : 通过 launchctl 查看 docker server, 记住docker server 名:

$ launchctl list | grep docker
-   0   com.docker.helper
86716   0   com.docker.docker.4180

然后关闭和启动它。

$ launchctl stop com.docker.docker.4180 && launchctl start com.docker.docker.4180

这种方法有可能起不来。

方法 2 : 通过docker.app启动

$ open /Applications/Docker.app

继续安装django

# docker pull django

安装完成

Using default tag: latest
latest: Pulling from library/django
75a822cd7888: Pull complete 
e4665cede9d1: Pull complete 
202a45aa091c: Pull complete 
7799136eb561: Pull complete 
7a7f9ca3fd40: Pull complete 
412f2d081014: Pull complete 
Digest: sha256:5bfd3f442952463f5bc97188b7f43cfcd6c2f631a017ee2a6fca3cb8992501e8
Status: Downloaded newer image for django:latest
docker.io/library/django:latest

参考:https://hub.docker.com/_/django

自己build镜像

准备requirements.txt文件

pymongo==3.7.1
django==1.11.23
django-mongoengine==0.3.3
PyYAML==3.13
requests==2.8.1

准备Dockerfile文件:

FROM python:3.6

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
    postgresql-client \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /usr/src/app
COPY . /user/src/app
RUN pip install -r requirements.txt

EXPOSE 8000
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

COPY . /user/src/app
这句的意思把 'docker build -t daozy-django-app .' 命令执行的当前目录内容copy到容器里的/usr/src/app目录下。

build image

如果出现问题,可能是你文件位置不对。

% docker build -t daozy-django-app .
[+] Building 256.3s (11/11) FINISHED                                                                                                                                                         
 => [internal] load build definition from Dockerfile                                                                                                                                    0.0s
 => => transferring dockerfile: 342B                                                                                                                                                    0.0s
 => [internal] load .dockerignore                                                                                                                                                       0.0s
 => => transferring context: 2B                                                                                                                                                         0.0s
 => [internal] load metadata for docker.io/library/python:3.6                                                                                                                           4.6s
 => [auth] library/python:pull token for registry-1.docker.io                                                                                                                           0.0s
 => [1/5] FROM docker.io/library/python:3.6@sha256:f8652afaf88c25f0d22354d547d892591067aa4026a7fa9a6819df9f300af6fc                                                                     0.0s
 => [internal] load build context                                                                                                                                                       5.3s
 => => transferring context: 88.66MB                                                                                                                                                    5.3s
 => CACHED [2/5] RUN apt-get update     && apt-get install -y --no-install-recommends     postgresql-client     && rm -rf /var/lib/apt/lists/*                                          0.0s
 => CACHED [3/5] WORKDIR /usr/src/app                                                                                                                                                   0.0s
 => [4/5] COPY . /usr/src/app                                                                                                                                                           0.9s
 => [5/5] RUN pip install -r requirements.txt                                                                                                                                         242.6s
 => exporting to image                                                                                                                                                                  2.7s 
 => => exporting layers                                                                                                                                                                 2.6s 
 => => writing image sha256:2f7c53725c1affd5e06c92098949fd40b66a614985e8def2b55b4dd53711372f                                                                                            0.0s 
 => => naming to docker.io/library/daozy-django-app                                                                                                                                     0.0s 
                                                                                                                                                                                             
Use 'docker scan' to run Snyk tests against images to find vulnerabilities and learn how to fix them         

启动docker

$ docker run --name daozy -d daozy-django-app

下一课 1.2 在ubuntu上安装Django
Django开发教程-目录大纲

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容