docker基础学习

1. 安装docker

#安装 yum 源 docker

wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo

#安装 docker 此处安装的是18版本的,还有19,20等等更高版本

yum -y install docker-ce-18.06.1.ce-3.el7

#启动

docker systemctl enable docker && systemctl start docker

#校验安装

docker version

#出现以下的客户端及服务端信息就是安装成功了

2.docker的架构要理解

Docker官方网站

Docker: Accelerated Container Application Development

docker安装之后会有客户端、服务端 以及docker远程仓库 (类似maven的远程镜像仓库,地址:https://hub.docker.com/search?q=)

客户端:像是redis的客户端一样,输入docker命令就可以操作服务端

服务端:很重要,包括一个个小的docker容器和镜像,每一个docker容器就像是一个小的linux虚拟机一样

远程仓库:我们一般会设置一个阿里云的镜像地址(https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo)我们拉取镜像就是从这个远程仓库中拉取的。

3.主要的docker命令:

docker pull redis*#如果不指定版本,就是最新版本*

docker images #查看下载到本地的镜像

docker run ... #这个命令(最重要)新建并且启动一个容器

例如:docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:8.0

-d #后台运行

--name #给容器起一个名字

-p #对应的端口号 例如:docker run -p 91:80 nginx (91是宿主机上的端口 80是容器的端口)

--net #网络模式:

--net=bridge #默认模式 表示连接到默认的网桥 容器所在的网络是一个内网

--net=host #容器使用宿主机的网络 容器和宿主机在同一个网段

docker ps #查看运行的容器信息及状态

docker ps -a #查看运行和停止的容器信息及状态

docker rmi image的id #删除镜像

docker stop 容器id #停止正在运行的容器

docker rm 容器id #删除容器(之前先stop)

docker restart 容器id #重启容器

docker start 容器id #启动已经停止的容器

docker inspect 容器id #比如说想看看容器中的信息:id等等

docker exec -it 容器id /bin/bash #进入正在运行的容器内部,进入成功就可以使用Shell命令了

docker container logs 容器id #查看容器日志

dockertop 容器id*#查看容器里的进程*

docker cp 容器id:要拷贝的文件在容器里面的路径 宿主机相应的路径

例如:docker cp 容器id:/etc/nginx/nginx.conf /mydata/nginx

docker cp 宿主机相应的路径 容器id:要拷贝的文件在容器里面的路径

相关推荐
无足鸟ICT2 小时前
【RHCA+】vmstat命令(监控系统资源)
linux·服务器
闪亮的路灯2 小时前
Linux 安装mqtt服务mosquitto
linux·运维·服务器
HideF2 小时前
nmcli
linux·服务器·网络
qetfw3 小时前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
Nuanyt4 小时前
Agent 学习笔记(下篇三):上线工程、进阶选择与操作界面(Stage 7 / 7.5 / 8 + 延伸路线)
笔记·python·学习·memory·aiagent·harness
叼烟扛炮5 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong5 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮5 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮6 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Escalating_xu6 小时前
【Linux 网络编程】DNS 与 ICMP:从域名解析到 ping、traceroute,把“网络通不通”问清楚
linux·网络·php