centos下使用docker部署Django專案

2021-09-10 19:54:03 字數 2553 閱讀 6622

docker是乙個開源的應用容器引擎,基於go語言並遵從apache2.0協議開源。docker 可以讓開發者打包他們的應用以及依賴包到乙個輕量級、可移植的容器中,然後發布到任何流行的 linux 機器上,也可以實現虛擬化。

docker的主要應用場景之一就是web應用的自動化打包和發布。下面我們將在centos系統下使用docker打包部署django專案。

1.檢視當前核心版本

uname -r​
2.登入centos,確保yum包更新到最新

yum update
3.安裝需要的軟體包

4.設定yum源

yum-config-manager --add-repo
5.檢視倉庫中所有docker版本,並選擇指定版本安裝

yum list docker-ce --showduplicates | sort -r
6.安裝docker

yum install docker-ce #預設安裝最新最穩定版本
7.驗證安裝是否成功

docker version
8.啟動docker

service docker start
docker-compose是乙個用來把docker自動化的東西。有了docker-compose 你可以把所有繁瑣的docker操作全都一條命令,自動化的完成。

安裝

pip install docker-compose
首先,我們需要建立python映象,如果你使用到了mysql資料庫,那麼mysql映象也是需要建立的。

1.建立python映象

docker pull python:3.6.4
2.建立mysql映象

docker pull mysql:5.7
補充:

下面是一些常用的操作命令

檢視已建立的映象

docker images
檢視已建立的容器

docker ps -a
檢視正在執行的容器

docker ps
刪除映象

docker rmi -f imageid
刪除容器

docker rm -f containerid
進入docker容器

docker exec -it 容器名 /bin/bash
更新docker容器,並安裝vim

apt-get update

apt-get install vim

3.在manage.py同一目錄下建立docker-compose.yml與dockerfile檔案

docker-compose.yml

version: '3'

services:

dj_web:

build: .

command: python ./manage.py runserver 0:8000

volumes:

- .:/code

ports:

- "8090:8000"

depends_on:

- db

networks:

default:

aliases:

- dj.com

db:image: mysql:5.7

environment:

- mysql_database=docker_house

- mysql_root_password=jin123

ports:

- "3333:3306"

volumes:

- db_data:/var/lib/mysql

volumes:

db_data:

注意,django專案的setting.py中連線資料庫處要寫成

databases = 

}

dockerfile

from python:3.6.4

env pythonunbuffered 1

run mkdir /code

workdir /code

add requirements.txt /code/

run pip install -r requirements.txt

add . /code/

docker-compose up
docker-compose down

CentOS下docker的使用

1 docker包的安裝 yum install docker y 2 檢視安裝的docker包 yum list installed grep docker 3 啟動docker服務 systemctl start docker 4 檢視docker的版本 docker version 5 檢視 ...

CentOS下使用docker安裝mysql

查詢mysql映象 docker search mysqldocker pull mysql新建資料夾data conf和檔案my.cnf mkdir root mysql data mkdir root mysql conf vi root mysql conf my.cnf編寫配置 client...

centos7下使用docker安裝mysql

若要pull latest mysql version.use docker pull mysql.its ok.在repository屬性下映象名可能為docker.io mysql.為了方便使用mysql直接查詢,可以使用docker tag命令,為docker.io mysql 新增新的映象標...