Docker基础

目录

一、理解

二、部署

(1)安装docker

(2)更换网络镜像源

三、Nginx镜像测试

1.镜像

2.启动容器/修改内容

3.保存镜像

4.挂载

5.网络

(1)默认网络

(2)稳定域名

四、redis主从同步集群

五、批量管理容器


一、理解

docker容器(集装箱/沙箱):环境+应用------>可移植容器中,发布到任何linux机器上

二、部署

(1)安装docker

进入docker官网,选择所要的系统

https://docs.docker.com/engine/installhttps://docs.docker.com/engine/install

选择后根据官网步骤一步步装

如下图可正常使用docker

再输入systemctl enable docker 让其自启动

(2)更换网络镜像源

vim /etc/docker/daemon.json创建镜像源文件

systemctl daemon-reload重载

systemctl restart docker重启docker

注:镜像源决定了镜像下载的丰富性,请选择多镜像的源添加。

三、Nginx镜像测试

1.镜像

docker search 所需镜像:检索镜像。也可以去官网(用魔法)查询镜像下载

https://hub.docker.comhttps://hub.docker.com静态页面或者详情在官网也有体现,需要用到的时候直接在官网相关地方查询

docker pull 所需镜像:下载

例子:docker pull nginx:1.1.1:下载指定1.1.1版本的nginx

docker images: 列表

docker rmi (唯一id)或者镜像名:版本名 :删除

例子:docker rmi nginx:latest :删除最新版nginx镜像(或者 docker rmi 3f8a4339aadd)

2.启动容器/修改内容

docker run 镜像名:版本号 :运行容器

docker ps -a :查看所有(包括已终止)

注1:容器本身启动自带端口,但外界无法访问,此端口为容器内独立端口只能在容器内使用。如果要外部访问,需要做端口映射(-p),将容器端口映射出去。

注2:容器内端口可重复(各自独立),映射端口不能重复。外部端口:内部端口(内部端口可重复)

docker stop 容器名(或ID):停止容器

docker start 容器名(或ID):启动容器(先运行才能启动)

docker stats 容器名(或ID):查看容器状态

docker logs 容器名(或ID):日志

docker exec -it 容器名 /bin/bash :进入容器控制台交互模式

进入后的操作与linux无异。但docker未自带vi等命令

输入exit退出控制台

docker rm 容器名(或ID):删除容器

docker rm -f $(docker ps -aq):把之前启动的都删除

3.保存镜像

docker commit 容器名 想存的名字: 提交到镜像列表

docker save -o 名.tar 镜像列表的镜像名: 保存成文件

docker load -i 文件:加载

4.挂载

背景:容器修改文件较为繁琐且容易丢失

docker run -v 外部目录:内部目标目录 :映射启动

注意:使用映射后以外部文件为准,若外部无数据则会出错

docker run -v 卷名:内部目标目录 :卷映射启动

映射会存在 /var/lib/docker/volumns/卷名 目录下,在该目录下就能编辑配置文件

5.网络

(1)默认网络

先启动两台docker

进入1后

访问2

其中,app1是通过了docker 0 的网关访问到app2

docker inspect 容器名:查看细节

docker 为每个容器也会分配一个唯一IP形成小的局域网,使用容器IP+容器内部应用端口即可访问。网关为docker 0

也可以通过局域网的IP进行访问。但端口为容器应用的内部端口。

(2)稳定域名

背景:IP可能会变化

docker network create xxx :创建自定义网络(默认网络docker0不支持域名)

docker run --network xx : 容器启动加入自定义网络中

直接使用容器名:内部端口 即可访问

四、redis主从同步集群

五、批量管理容器

docker compose up -d :上线

docker compose down :下线

docker compose start x1 x2 x3 :启动

docker compose stop x1 x2 x3:停止

docker compose scale x2=3:扩容

相关推荐
闪亮的路灯5 小时前
Linux 安装mqtt服务mosquitto
linux·运维·服务器
szxinmai主板定制专家7 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
叼烟扛炮8 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
Decay__9 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构
久曲健的测试窝9 小时前
2026软件测试工具选型指南:双模式如何化解UI脚本维护难题
运维·人工智能·科技·aigc
DarkAthena9 小时前
wslc ps 卡死的排查:一次「停容器不停 VM」引发的连环故障
docker
NailiConveyor10 小时前
柔性物流方案如何适配工厂升级?自动化输送流水线定制要点
大数据·运维·自动化·制造·业界资讯
小沈同学呀10 小时前
【Agent开发第十五期】部署上线:把 Alex 搬进浏览器,15 期全栈串联收官
docker·agent·从零搭建ai助手
Lsetea10 小时前
Certbot webroot申请SSL证书总是404:Nginx挑战目录与路径映射检查
运维·nginx·https·ssl证书·certbot
如若12310 小时前
Windows SSH + Headscale/Tailscale 组网及免密登录完整配置教程
运维·windows·ubuntu·ssh·内网穿透