Docker学习

一:学习步骤

1. 基础知识

什么是 Docker:了解 Docker 的定义、用途和优势。Docker 是一种容器化技术,可以在不同环境中一致地运行应用程序。

容器 vs 虚拟机:理解容器与传统虚拟机的区别,容器更加轻量级,共享操作系统内核,启动速度更快。

2. 安装与设置

安装 Docker:在不同操作系统(如 Windows、macOS、Linux)上安装 Docker。官方文档提供详细的安装步骤。

基本命令:熟悉基本命令如 docker run、docker ps、docker stop、docker rm 等,用于管理和操作容器。

3. 镜像管理

Docker 镜像:理解镜像的概念,如何从 Docker Hub 获取镜像,使用 docker pull 命令。

创建镜像:学习使用 Dockerfile 来创建自定义镜像,了解 Dockerfile 的基本语法和指令如 FROM、RUN、COPY、EXPOSE 等。

镜像操作:掌握 docker build、docker commit 等命令,用于构建和管理镜像。

4. 容器操作

启动与管理容器:使用 docker run 启动容器,理解常用参数如 -d(后台运行)、-p(端口映射)、-v(卷挂载)等。

容器生命周期:学习如何停止、启动、重启和删除容器,使用 docker stop、docker start、docker restart、docker rm 等命令。

5. 数据管理

数据卷(Volumes):理解数据卷的概念及其用途,用于持久化和共享数据。学习使用 docker volume create、docker volume ls 等命令管理数据卷。

挂载卷:在容器运行时挂载数据卷,通过 -v 参数实现数据持久化。

6. 网络管理

网络模型:了解 Docker 提供的网络模式(桥接网络、主机网络、覆盖网络等)。

容器互联:学习如何配置和管理容器间的网络通信,通过 docker network 命令创建和管理自定义网络。

7. Docker Compose

Compose 基本概念:理解 Docker Compose 用于定义和管理多容器应用的 YAML 文件格式。

编写 Compose 文件:学习编写 docker-compose.yml 文件,定义多个服务及其依赖关系。

Compose 命令:掌握 docker-compose up、docker-compose down、docker-compose logs 等命令。

8. 实践与应用

实际项目应用:在实际项目中使用 Docker,练习将应用容器化,测试、部署和维护容器化应用。

CI/CD 集成:了解如何在持续集成和持续部署(CI/CD)流程中集成 Docker,实现自动化构建、测试和部署。

9. 进阶主题

Docker Swarm:学习 Docker 的原生编排工具 Swarm,实现容器集群管理。

Kubernetes:深入学习 Kubernetes,掌握其架构、核心概念和基本操作。

通过上述步骤,逐步深入 Docker 的核心内容,从基础知识到实际操作,再到进阶应用,全面掌握 Docker 技术。

二:ubuntu环境下的Docker安装

ARM架构Ubuntu安装docker遇到的问题解决!

报错:

Failed to connect to download.docker.com port 443: Connection timed out

gpg: no valid OpenPGP data found.

更新你的现有列表包

sudo apt-get update

安装一些必要的系统工具

sudo apt-get install -y \
    apt-transport-https \
    ca-certificates \curl \
    software-properties-common

添加Docker官方GPG密钥(如果之前添加过可以跳过)

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

添加Docker官方软件源,注意这里的arch=后面的参数,也就是arm和x86对应的是不同的值

sudo add-apt-repository \
   "deb [arch=arm64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

再次更新你的包列表

sudo apt-get update

现在,可以安装Docker了:

sudo apt-get install docker-ce

验证是否成功安装了docker:

docker --version

然后尝试拉取 hub.docker.com 的镜像 发现 速度龟速,因为是海外 有墙,所以配置镜像加速器

修改Docker配置文件。如果系统为Ubuntu 16.04+、Debian 8+、CentOS 7、Fedora 24+、RedHat 7+等,请修改/etc/docker/daemon.json文件(如果该文件不存在,请新建)

vim /etc/docker/daemon.json

然后添加如下内容

{
  "registry-mirrors": ["https://b2w3942p.mirror.aliyuncs.com"]
}



/***
**如果提示没有权限修改,就利用下面的指令修改
**/

:w !sudo tee % 

然后重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

再运行下面的指令看docker是否启动

sudo systemctl status docker

效果如下:

三:Docker常用指令汇总

基本命令

sudo apt-get install docker-ce    # 安装 Docker
docker --version                  # 查看 Docker 版本
docker --help                     # 获取帮助

镜像管理

docker pull <image_name>          # 拉取镜像
docker images                     # 列出本地镜像
docker rmi <image_id>             # 删除本地镜像
docker search <term>              # 搜索镜像
docker build -t <image_name> <path_to_dockerfile>    # 构建镜像

容器管理

docker run -d --name <container_name> <image_name>    # 运行容器
docker ps                      # 列出运行中的容器
docker ps -a                   # 列出所有容器(包括停止的)
docker stop <container_id>     # 停止容器
docker start <container_id>    # 启动已停止的容器
docker rm <container_id>       # 删除容器
docker logs <container_id>     # 查看容器日志
docker exec -it <container_id> /bin/bash    # 进入正在运行的容器
docker export <container_id> -o <file_name>.tar    # 导出容器
cat <file_name>.tar | docker import - <image_name>    # 导入容器

网络管理

docker network ls                  # 列出 Docker 网络
docker network create <network_name>    # 创建 Docker 网络
docker network connect <network_name> <container_id>    # 连接容器到网络
docker network disconnect <network_name> <container_id>    # 断开容器与网络的连接
docker network rm <network_name>    # 删除 Docker 网络

数据卷管理

docker volume create <volume_name>    # 创建数据卷
docker volume ls                      # 列出数据卷
docker run -d -v <volume_name>:/path/in/container <image_name>    # 挂载数据卷到容器
docker volume rm <volume_name>    # 删除数据卷

Docker Compose

docker-compose up                  # 启动服务
docker-compose up -d               # 在后台启动服务
docker-compose down                # 停止服务
docker-compose logs                # 查看服务日志
docker-compose restart             # 重启服务

四:Docker可视化工具

五:Docker Compose

相关推荐
守护者17018 分钟前
JAVA学习-练习试用Java实现“使用Arrays.toString方法将数组转换为字符串并打印出来”
java·学习
tntlbb25 分钟前
Ubuntu20.4 VPN+Docker代理配置
运维·ubuntu·docker·容器
学会沉淀。27 分钟前
Docker学习
java·开发语言·学习
Rinai_R42 分钟前
计算机组成原理的学习笔记(7)-- 存储器·其二 容量扩展/多模块存储系统/外存/Cache/虚拟存储器
笔记·物联网·学习
吃着火锅x唱着歌42 分钟前
PHP7内核剖析 学习笔记 第四章 内存管理(1)
android·笔记·学习
ragnwang44 分钟前
C++ Eigen常见的高级用法 [学习笔记]
c++·笔记·学习
Gabriel_liao1 小时前
Docker安装Neo4j
docker·容器·neo4j
Web阿成2 小时前
3.学习webpack配置 尝试打包ts文件
前端·学习·webpack·typescript
雷神乐乐3 小时前
Spring学习(一)——Sping-XML
java·学习·spring