Linux系統(tǒng)使用Docker開(kāi)發(fā)Django項(xiàng)目圖文詳細(xì)教程
發(fā)表時(shí)間:2023-08-06 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]在Linux系統(tǒng)中Docker是一個(gè)應(yīng)用開(kāi)發(fā)平臺(tái),可以把應(yīng)用在Docker上打包,然后在Linux Docker上運(yùn)行調(diào)試。而且目前Docker是Linux最火熱的軟件發(fā)布器之一了。本文就來(lái)介紹一下...
在Linux系統(tǒng)中Docker是一個(gè)應(yīng)用開(kāi)發(fā)平臺(tái),可以把應(yīng)用在Docker上打包,然后在Linux Docker上運(yùn)行調(diào)試。而且目前Docker是Linux最火熱的軟件發(fā)布器之一了。本文就來(lái)介紹一下Linux系統(tǒng)使用Docker開(kāi)發(fā)Django項(xiàng)目教程。
通過(guò) Docker Machine 「系統(tǒng)配置」和 Docker Compose 「多容器應(yīng)用組裝」 提供堆?梢酝瓿 Postgres, Redis 和 Django 項(xiàng)目相結(jié)合的開(kāi)發(fā)。
而在最后,該堆棧將包括如下每個(gè)服務(wù)的單獨(dú)的容器:
一個(gè) Web/ Django 的容器
一個(gè) Nginx 的容器
一個(gè) Postgres 的容器
一個(gè) Redis 的容器
一個(gè) Data 容器
本地設(shè)置
使用 Docker「v1.6.1」版本我們將使用到 Docker Compose 「v1.2.0」編排一個(gè)多容器組成的應(yīng)用程序,使用 Docker Machine「v0.2.0」創(chuàng)建本地和云的 Docker 主機(jī)。 按照指示,分別安裝 Docker Compose 和 Machine,然后測(cè)試安裝結(jié)果:
$ docker-machine --version
docker-machine version 0.2.0 (8b9eaf2)
$ docker-compose --version
docker-compose 1.2.0
接下來(lái),根據(jù)以下項(xiàng)目結(jié)構(gòu)從realpython/dockerizing-django克隆一份項(xiàng)目或自己創(chuàng)建項(xiàng)目:
├── docker-compose.yml
├── nginx
│ ├── Dockerfile
│ └── sites-enabled
│ └── django_project
├── production.yml
└── web
│ ├── Dockerfile
│ ├── docker_django
│ │ ├── __init__.py
│ │ ├── apps
│ │ │ ├── __init__.py
│ │ │ └── todo
│ │ │ ├── __init__.py
│ │ │ ├── admin.py
│ │ │ ├── models.py
│ │ │ ├── templates
│ │ │ │ ├── _base.html
│ │ │ │ └── home.html
│ │ │ ├── tests.py
│ │ │ ├── urls.py
│ │ │ └── views.py
│ │ ├── settings.py
│ │ ├── urls.py
│ └── wsgi.py
│ ├── manage.py
│ ├── requirements.txt
│ └── static
│ │ └── main.css《/code》
現(xiàn)在我們準(zhǔn)備容器運(yùn)行……
Docker Machine
開(kāi)啟 Docker Machine,只需運(yùn)行:
$ docker-machine create -d virtualbox dev;
INFO[0000] Creating CA: /Users/michael/.docker/machine/certs/ca.pem
INFO[0000] Creating client certificate: /Users/michael/.docker/machine/certs/cert.pem
INFO[0001] Downloading boot2docker.iso to /Users/michael/.docker/machine/cache/boot2docker.iso.。。
INFO[0035] Creating SSH key.。。
INFO[0035] Creating VirtualBox VM.。。
INFO[0043] Starting VirtualBox VM.。。
INFO[0044] Waiting for VM to start.。。
INFO[0094] “dev” has been created and is now the active machine.
INFO[0094] To point your Docker client at it, run this in your shell: eval “$(docker-machine env dev)”
這個(gè) create 命令設(shè)置一個(gè)新的 Machine「開(kāi)發(fā)環(huán)境」。實(shí)際上,它是下載 Boot2Docker 并開(kāi)始運(yùn)行 VM,F(xiàn)在只要在開(kāi)發(fā)環(huán)境下指定 Docker:
$ eval “$(docker-machine env dev)”
運(yùn)行以下命令來(lái)查看當(dāng)前正在運(yùn)行的機(jī)器:
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL
dev * virtualbox Running tcp://192.168.99.100:2376
接下來(lái),我們會(huì)讓 Django,Postgres 和 Redis 的容器運(yùn)行起來(lái)。
Linux是一套免費(fèi)使用和自由傳播的類(lèi)Unix操作系統(tǒng)