Docker基础入门
Docker基础入门
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上。
什么是Docker?
Docker是一个用于开发、交付和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件。
Docker的核心概念
镜像(Image)
Docker镜像是一个只读模板,用于创建Docker容器。镜像可以基于其他镜像创建,也可以从头开始创建。
# 列出本地镜像
docker images
# 拉取镜像
docker pull ubuntu:20.04
容器(Container)
容器是镜像的可运行实例。可以使用Docker API或CLI创建、启动、停止、移动或删除容器。
# 运行容器
docker run -it ubuntu:20.04 bash
# 列出正在运行的容器
docker ps
# 列出所有容器
docker ps -a
Dockerfile
Dockerfile是一个文本文件,包含了构建Docker镜像所需的所有命令。
FROM ubuntu:20.04
MAINTAINER example@example.com
RUN apt-get update && apt-get install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Docker常用命令
以下是一些常用的Docker命令:
# 查看Docker版本
docker version
# 查看Docker系统信息
docker info
# 查看Docker帮助
docker --help
# 列出本地镜像
docker images
# 拉取镜像
docker pull [镜像名]:[标签]
# 构建镜像
docker build -t [镜像名]:[标签] .
# 删除镜像
docker rmi [镜像ID]
# 创建并启动容器
docker run [选项] [镜像名] [命令]
# 启动容器
docker start [容器ID]
# 停止容器
docker stop [容器ID]
# 删除容器
docker rm [容器ID]
Docker Compose
Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。使用YAML文件配置应用程序的服务,然后使用单个命令创建并启动所有服务。
version: '3'
services:
web:
build: .
ports:
- "5000:5000"
redis:
image: "redis:alpine"
Docker Compose非常适合开发、测试和暂存环境,以及CI工作流程。