0
点赞
收藏
分享

微信扫一扫

Linux学习(四)Docker构建Python_Web环境

爱写作的小土豆 2023-06-09 阅读 59

目录


在这里插入图片描述
Docker 是一个开源的应用容器引擎,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。


Docker 安装

若 Docker 官方库添加失败可尝试使用以下命令

$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Docker 使用

Docker 启停

service docker start
service docker stop
service docker restart

Docker 换源

sudo vim /etc/docker/daemon.json
{"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com"]}

systemctl daemon-reload
systemctl restart docker

Docker 镜像

# Install Docker Image
sudo docker pull python:3.7

# Show Installed Images Name
sudo docker images

# Show Informations of Image
sudo docker inspect python:3.7

# Tar Docker Images
sudo docker save python:3.7 > ~/Downloads/python.tar

# Load Docker Images
sudo docker load < ~/Downloads/python.tar

# Delete Docker Images
sudo docker rmi python:3.7

Docker 容器

# Creat Container
# -it: Interaction
# --name: Container Name
sudo docker run -it --name=Test_one python:3.7 bash

# Show Container Status
sudo docker ps -a

# Start Container
sudo docker start Test_one

# Stop Container
sudo docker stop Test_one

# Pause Container
sudo docker pause Test_one

# Unpause Container 
sudo docker unpause Test_one

# Execute into Container (Make Sure Container Running)
sudo docker exec -it Test_one bash

# Show Informations of Container
sudo docker inspect Test_one

# Delete Container (Make Sure Container Stopping)
sudo docker rm Test_one

Docker 创建内部网段

# Docker Default IP 				172.17.0.1
# Create Docker Python Container IP 172.18.0.1
# Create Docker MySQL Container IP  172.19.0.1

# Create Network
sudo docker network create --subnet=172.18.0.0/16 mynet
sudo docker network rm mynet

# Show Created-Network
sudo docker network ls

Docker Python 镜像创建

# Creat Container
# -it: Interaction
# -p: Root_Port connect Container_Port
# -v: Root_Dir connect Container_Dir
# --name: Container Name
# --net: Network Choose
# --ip: IP set

# -d: Container Running BackStage

sudo docker run -it -v ~/DockerLinkDir:/root/Test -p 9500:5000 --name=Test --net mynet --ip 172.18.0.2 python:3.7 bash

sudo docker run -it -d -v ~/DockerLinkDir:/root/Test -p 9500:5000 --name=Test --net mynet --ip 172.18.0.2 python:3.7 bash

Docker MySQL 镜像创建

# -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install mysql-connector-python
pip install sqlalchemy

sudo docker run -d -v ~/DockerProject/TestSQLDir:/var/lib/mysql -p 4306:3306 --name=TestSQL --net mynet --ip 172.18.0.3 -e MYSQL_ROOT_PASSWORD=111111 mysql

Docker 补充

# Running PythonProgramme BackStage
nohup python app.py > logs.txt

服务器 Docker 命令行操作
在这里插入图片描述


Navicat 连接服务器DockerMySQL容器数据库

在这里插入图片描述

举报

相关推荐

0 条评论