Docker 初学者教程

news/2025/2/15 1:18:17/

Docker 初学者教程

1. Docker 简介

Docker 是一个开源的应用容器引擎,允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中。

容器与虚拟机不同,它们共享宿主机的操作系统内核,因此更加轻量且启动迅速。

1.1 基本概念

  • 镜像(Image): 镜像是一个只读模板,包含了运行应用所需的代码、库、环境变量和配置文件。镜像是容器的基础。
  • 容器(Container): 容器是镜像的运行实例。你可以启动、停止、移动或删除容器。每个容器都是独立且隔离的。
  • Dockerfile: 一个文本文件,包含了一系列指令,用于自动化构建 Docker 镜像。
  • Docker Hub: 一个公共的镜像仓库,你可以从中拉取镜像,也可以将自己的镜像推送到这里。

2. 在 Linux Ubuntu 上安装 Docker

  1. 更新系统包:
sudo apt-get update
  1. 安装依赖包:
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
  1. 添加 Docker 官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. 添加 Docker 仓库:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
  1. 安装 Docker:
sudo apt-get update
sudo apt-get install docker-ce
  1. 验证安装:
sudo docker --version

3. Docker 基本操作

3.1 拉取镜像

Docker Hub 拉取一个镜像,例如 Ubuntu

docker pull ubuntu

3.2 运行容器

使用拉取的镜像运行一个容器

docker run -it ubuntu /bin/bash
  • -i: 交互模式。
  • -t: 分配一个伪终端。
  • ubuntu: 使用的镜像。
  • /bin/bash: 启动容器后执行的命令。

3.3 查看运行的容器

查看当前正在运行的容器

docker ps

查看所有容器(包括已停止的):

docker ps -a

3.4 停止和启动容器

停止一个运行中的容器

docker stop <container_id>

启动一个已停止的容器

docker start <container_id>

3.5 删除容器

删除一个已停止的容器

docker rm <container_id>

3.6 删除镜像

删除一个本地镜像:

docker rmi <image_id>

4. 总结

通过本教程,你已经掌握了 Docker 的基本概念、安装步骤以及一些常用操作。

Docker 是一个强大的工具,能够极大地简化应用的部署和管理。

接下来,你可以尝试构建自己的 Docker 镜像,或者探索 Docker Compose 等高级功能。

– 欢迎点赞、关注、转发、收藏【我码玄黄】,各大平台同名。


http://www.ppmy.cn/news/1572114.html

相关文章

分布式微服务接口基于多线程进行性能优化

1.使用多线程与futureTask进行进行优化 1.1 实现流程图 1.2 代码逻辑模拟实现 public class OrderService {Resourceprivate RemoteService remoteservice;//远程过程调用(模拟类)Resourceprivate ExecutorService executorService;public Object order( long userId){JsonOb…

IDEA中列举的是否是SpringBoot的依赖项的全部?在哪里能查到所有依赖项,如何开发自己的依赖项让别人使用

在 IntelliJ IDEA 中列举的依赖项并不一定是 Spring Boot 项目的全部依赖项。IDEA 通常只显示你在 pom.xml&#xff08;Maven&#xff09;或 build.gradle&#xff08;Gradle&#xff09;中显式声明的依赖项&#xff0c;而这些依赖项本身可能还会引入其他传递性依赖。 1. 如何…

MySQL Workbench安装教程以及菜单汉化

WorkBench的下载 直接给下载MySql WorkBench的链接&#xff0c;直接进入正题&#xff1a;MySQL :: Download MySQL Workbench[这里是图片001]https://dev.mysql.com/downloads/workbench/进入了下载界面&#xff1a; &#xff08;安装路径自己看着办&#xff0c;注意安装路径不…

cnn以及例子

cnn CNN 即卷积神经网络&#xff08;Convolutional Neural Network&#xff09;&#xff0c;是一种专门为处理具有网格结构数据&#xff08;如图像、音频&#xff09;而设计的深度学习模型&#xff0c;在计算机视觉、语音识别等诸多领域都有广泛应用。以下是 CNN 的详细介绍&a…

React源码揭秘 | scheduler 并发更新原理

React 18增加了并发更新特性&#xff0c;开发者可以通过useTransition等hooks延迟执行优先级较低的更新任务&#xff0c;以达到页面平滑切换&#xff0c;不阻塞用户时间的目的。其实现正是依靠scheduler库。 scheduler是一个依赖时间片分片的任务调度器&#xff0c;React团队将…

财务主题数据分析-企业盈利能力分析

企业盈利能力数据主要体现在财务三张表中的利润表里面&#xff0c;盈利能力需要重点需要关注的指标有&#xff1a;毛利率、净利率、净利润增长率、营业成本增长率等&#xff1b; 接下来我们分析一下某上市公司披露的财务数据&#xff0c;看看该企业盈利能力如何&#xff1a; …

基于深度学习的半导体算法原理及应用

摘要 随着半导体产业的持续发展&#xff0c;深度学习技术在该领域的应用日益广泛且深入。本文全面阐述了基于深度学习的半导体算法原理&#xff0c;涵盖卷积神经网络&#xff08;CNN&#xff09;、循环神经网络&#xff08;RNN&#xff09;及其变体长短时记忆网络&#xff08;…

SQL入门到精通 理论+实战 -- 在 MySQL 中学习SQL语言

目录 一、环境准备 1、MySQL 8.0 和 Navicat 下载安装 2、准备好的表和数据文件&#xff1a; 二、SQL语言简述 1、数据库基础概念 2、什么是SQL 3、SQL的分类 4、SQL通用语法? 三、DDL&#xff08;Data Definition Language&#xff09;&#xff1a;数据定义语言 1、…