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容器的响应。

文档下载

相关推荐
@泽栖5 小时前
Docker 常用命令
运维·服务器·docker
鲁正杰7 小时前
在一个服务器上抓取 Docker 镜像并在另一个服务器上运行
运维·服务器·docker
老大白菜8 小时前
Windows 11 安装 Dify 完整指南 非docker环境
windows·docker·容器
VinciYan11 小时前
基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署
python·ubuntu·docker·自动化·jenkins·.net·运维开发
tntlbb12 小时前
Ubuntu20.4 VPN+Docker代理配置
运维·ubuntu·docker·容器
Gabriel_liao13 小时前
Docker安装Neo4j
docker·容器·neo4j
豆豆豆豆变16 小时前
Docker轻量级可视化工具Portainer
docker·容器·自动化运维
花晓木16 小时前
k8s etcd 数据损坏处理方式
容器·kubernetes·etcd
运维&陈同学16 小时前
【模块一】kubernetes容器编排进阶实战之基于velero及minio实现etcd数据备份与恢复
数据库·后端·云原生·容器·kubernetes·etcd·minio·velero
花晓木16 小时前
k8s备份 ETCD , 使用velero工具进行备份
容器·kubernetes·etcd