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

文档下载

相关推荐
藥瓿亭28 分钟前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
2302_8097983233 分钟前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器
嵌入式大圣35 分钟前
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
运维·docker·容器
孔令飞1 小时前
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
ai·云原生·容器·golang·kubernetes
极简网络科技3 小时前
Docker、Wsl 打包迁移环境
运维·docker·容器
杨浦老苏3 小时前
轻量级Docker管理工具Docker Switchboard
运维·docker·群晖
江湖有缘3 小时前
【Docker管理工具】部署Docker可视化管理面板Dpanel
运维·docker·容器
一加一等于二3 小时前
docker部署postgresql17,并且安装插件
docker·postgresql
猫咪老师19954 小时前
多系统一键打包docker compose下所有镜像并且使用
java·docker·容器
aitav05 小时前
⚡️ Linux Docker 基本命令参数详解
linux·运维·docker