如何在Linux上部署Docker

幽灵探险家 2021-03-06 ⋅ 88 阅读

Docker 是目前最流行的容器化技术之一,可以在不同的操作系统上创建、部署和管理应用程序的容器。本文将介绍如何在 Linux 上部署 Docker,并为 Docker 的内容添加一些丰富的功能。

步骤一:安装 Docker

  1. 更新软件包

    $ sudo apt update
    
  2. 安装必要的软件包以允许 apt 使用 HTTPS

    $ sudo apt install apt-transport-https ca-certificates curl software-properties-common
    
  3. 添加 Docker 的官方 GPG 密钥

    $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    
  4. 设置 Docker 的稳定存储库

    $ echo "deb [arch=amd64 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
    
  5. 更新软件包索引

    $ sudo apt update
    
  6. 安装最新版本的 Docker

    $ sudo apt install docker-ce docker-ce-cli containerd.io
    
  7. 验证 Docker 安装是否成功

    $ sudo docker run hello-world
    

步骤二:Docker 内容丰富

Docker 提供了很多功能来丰富容器的内容和功能。以下是一些示例:

1. 使用 Dockerfile 构建镜像

Dockerfile 是用于定义 Docker 镜像的文本文件。通过编写 Dockerfile,可以指定容器的基础镜像、安装软件、设置环境变量等。以下是一个简单的例子:

# 使用基础镜像
FROM ubuntu:latest

# 更新软件包列表
RUN apt-get update

# 安装必要的软件
RUN apt-get install -y nginx

# 设置工作目录
WORKDIR /var/www/html

# 复制文件到容器中
COPY index.html .

# 暴露端口
EXPOSE 80

# 定义容器启动时的命令
CMD ["nginx", "-g", "daemon off;"]

可以使用以下命令通过 Dockerfile 构建镜像:

$ sudo docker build -t mywebapp .

2. 使用 Docker Compose 编排容器

Docker Compose 是用于定义和管理多个 Docker 容器的工具。通过编写 docker-compose.yml 文件,可以定义多个服务和容器之间的依赖关系、网络设置、卷挂载等。以下是一个简单的例子:

version: '3'
services:
  web:
    build: .
    ports:
      - "80:80"
    volumes:
      - ./html:/var/www/html

可以使用以下命令来启动 Docker Compose:

$ sudo docker-compose up -d

3. 使用 Docker Registry 存储和分享镜像

Docker Registry 是一个存储和分发 Docker 镜像的服务器。可以使用 Docker Registry 来保存自己构建的镜像,以便在其他地方使用或分享。可以使用 Docker 官方提供的 Docker Hub(https://hub.docker.com)作为默认的 Docker Registry,也可以自己搭建私有的 Docker Registry。

以上是在 Linux 上部署 Docker 并丰富 Docker 内容的一些基本步骤和示例。希望本文能够帮助您开始使用 Docker 并发挥其强大的功能。

参考链接:

  • Docker 官方文档:https://docs.docker.com/
  • Docker Compose 官方文档:https://docs.docker.com/compose/
  • Docker Hub:https://hub.docker.com/

全部评论: 0

    我有话说: