Docker学习笔记

本文详细介绍了Docker的安装、基本命令、镜像和容器的管理,包括数据卷的使用来实现数据持久化,以及Dockerfile的编写和Docker服务编排。此外,还涵盖了Docker在MySQL、Tomcat、Nginx和Redis等应用的部署实践,并讲解了如何搭建和使用私有仓库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1 初识Docker

1.1 Docker

1.2 安装Docker

1.3 Docker架构

1.4 配置加速器

2 Docker命令

2.1 Docker服务相关命令(daemon)

2.2 Docker镜像相关命令(Image)

2.3 Docker容器相关命令(container)

3.Docker容器的数据卷

3.1 数据卷

3.2 数据卷配置

3.3 数据卷容器

4.Docker的应用部署

4.1 MySQ部署

4.2 Tomcat部署

4.3 Nginx部署

4.4 Redis部署

 5.Dockerfile

5.1 Docker镜像原理

5.2 Docker如何制作

5.3 Dockerfile案例

6. Docker服务编排

6.1 服务编排

 6.2 Docker Compose

7.Docker的私有仓库

1 初识Docker

1.1 Docker

代码开发涉及不同的环境

ps:开发环境和测试环境不同,会报bug。

Docker: 是一个开源的应用容器引擎。诞生于2013年,基于Go语言。

  • 可以让开发者打包他们的应用以及依赖包到一个轻量级,可移植的容器中,然后发布到Linux机器上;
  • 完全使用沙箱机制,相互隔离;
  • 分为CE(社区版)和EE(企业版)

1.2 安装Docker

#yum包更新
yum update

#安装需要的软件包,yum-util提供yum-config-manger功能,另外两个是deviceapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2

#设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

#安装docker,出现输入的界面都按y
yum install -y docker-ce

#查看docker版本,验证是否成功
docker -v

1.3 Docker架构

镜像(Image):相当于一个root文件系统,比如官方镜像ubuntu16.04就是包含了完整的一套ubuntu16.04最小系统的root文件系统;

容器(contrainer):镜像和容器的关系,就像是面向对象程序设计中的类和对象一样,镜像是静态的定义,容器时镜像运行时的实体。容器可以创建、启动、删除、暂定等;

1.4 配置加速器

●USTC:中科大镜像加速器
●阿里云
●网易云
●腾讯云
例如:阿里云,登录账号--左上角的产品与服务--容器镜像服务--镜像加速器文档

根据文档上操作即可。

2 Docker命令

2.1 Docker服务相关命令(daemon)

#1.启动docker服务
systemctl start docker

#2.查看状态
systemctl status docker  ##activate(running)显示正在运行中

#3.停止
systemctl stop docker

#4.重启
restart docker

#5.开机启动docker
systemctl enable docker

2.2 Docker镜像相关命令(Image)

#查看镜像
docker images #查看本地

#搜索镜像
docker search redis

#拉取镜像
docker pull redis

#删除
docker rmi id
#id查看用docker images查看
#删除所有的镜像
docker rmi 'docker images -q'


2.3 Docker容器相关命令(container)

#1.查看容器
docker images

#2.创建容器
docker run -it --name=hxf centos:7 /bin/bash
#查看内容
ll
#退出容器
exit
#i:保持容器运行,通常与t同时使用

#3.查看正在运行的容器
docker ps
#全部的
docker ps -a

#进入容器内部 ,退出容器不会关闭
docker exec -it hxf /bin/bash
ll
exit
#t:为容器重新分配一个输入终端,通常于i同时使用


#4.停止容器
docker stop hxf
docker ps -a

#5.启动容器
docker start hxf

#6.删除容器
docker rm hxf
#删除所有的容器
docker ps -aq
docker rm 'docker ps -aq'  #ps:不能删除正在运行的容器

#查看容器的信息
docker inspect hxf




3.Docker容器的数据卷

问题引入:

docker的容器删除后,在容器中产生的数据还在吗? 不在了

Docker容器和外部机器可以直接交换文件吗?

容器之间想要进行数据交换? 

3.1 数据卷

数据卷是宿主机的一个目录或文件;

当容器目录和数据卷目录绑定后,对方的修改会立即同步;

一个数据卷可以被多个容器同时挂载;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值