docker配置使用

Docker配置与使用指南

目录:

  1. 简介

  2. 安装Docker

  3. 基本命令

  4. 镜像管理

  5. 容器管理

  6. 数据卷管理

  7. 网络管理

  8. Dockerfile编写

  9. 示例代码

  10. 简介

    Docker是一个开源的应用容器引擎,可以让开发者将应用及其依赖包打包到一个轻量级的、可移植的容器中,然后发布到任何支持Docker的平台上。Docker可以简化开发、部署和运行应用程序的过程。

  11. 安装Docker

    在不同的操作系统上,安装Docker的方法略有不同。以下是在Ubuntu系统上安装Docker的方法:

bash 复制代码
# 更新软件包列表
sudo apt-get update

# 安装Docker
sudo apt-get install docker-ce

# 启动Docker服务
sudo systemctl start docker

# 设置Docker开机自启
sudo systemctl enable docker
  1. 基本命令
  • 拉取镜像:docker pull [镜像名]
  • 查看本地镜像:docker images
  • 运行容器:docker run [镜像名]
  • 查看运行中的容器:docker ps
  • 查看所有容器(包括已停止的):docker ps -a
  • 停止容器:docker stop [容器ID]
  • 删除容器:docker rm [容器ID]
  • 删除镜像:docker rmi [镜像ID]
  1. 镜像管理

    可以使用docker pull命令从Docker Hub拉取公共镜像,也可以使用docker build命令从Dockerfile构建镜像。

  2. 容器管理

    可以使用docker run命令创建并启动一个容器,使用docker exec命令在运行中的容器中执行命令,使用docker logs命令查看容器的日志。

  3. 数据卷管理

    数据卷是Docker容器中的一个特殊目录,可以用来持久化容器的数据。可以使用docker run -v [宿主机目录]:[容器目录] [镜像名]命令将宿主机的目录挂载到容器中。

  4. 网络管理

    Docker提供了多种网络驱动,可以使用docker network create命令创建自定义网络,使用docker network ls命令查看所有网络。

  5. Dockerfile编写

    Dockerfile是一个文本文件,包含了一组用户可以调用docker客户端执行的命令。以下是一个简单的Dockerfile示例:

Dockerfile 复制代码
# 使用官方的Python基础镜像
FROM python:3.7-slim

# 设置工作目录
WORKDIR /app

# 将当前目录下的文件复制到容器的/app目录
ADD . /app

# 安装依赖
RUN pip install --trusted-host pypi.python.org -r requirements.txt

# 暴露端口
EXPOSE 80

# 定义环境变量
ENV NAME World

# 运行app.py
CMD ["python", "app.py"]
  1. 示例代码
    以下是一个使用Docker部署Python Web应用的示例:

首先,创建一个名为app.py的文件,内容如下:

python 复制代码
from flask import Flask
import os

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, {}!'.format(os.environ['NAME'])

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=80)

接下来,创建一个名为requirements.txt的文件,内容如下:

复制代码
Flask==1.1.2

然后,创建一个名为Dockerfile的文件,内容如第8节所示。

最后,使用以下命令构建和运行Docker容器:

bash 复制代码
# 构建镜像
docker build -t my-python-app .

# 运行容器
docker run -d -p 80:80 my-python-app

现在,访问http://localhost,你将看到来自Docker容器的响应。

文档下载

相关推荐
金刚猿9 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong10 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿10 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
陈桴浮海11 小时前
Kustomize实战:从0到1实现K8s多环境配置管理与资源部署
云原生·容器·kubernetes
70asunflower14 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
ShiLiu_mtx14 小时前
k8s - 7
云原生·容器·kubernetes
春日见15 小时前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设
xuhe215 小时前
[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题
linux·docker·ai·github·tldr
7哥♡ۣۖᝰꫛꫀꪝۣℋ15 小时前
Spring-cloud\Eureka
java·spring·微服务·eureka
星火s漫天16 小时前
第一篇: 使用Docker部署flask项目(Flask + DB 容器化)
数据库·docker·flask