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:要拷贝的文件在容器里面的路径

相关推荐
破-风2 小时前
linux的用法
linux·运维·服务器
涛ing5 小时前
32. C 语言 安全函数( _s 尾缀)
linux·c语言·c++·vscode·算法·安全·vim
__雨夜星辰__5 小时前
Linux 学习笔记__Day2
linux·服务器·笔记·学习·centos 7
大耳朵土土垚5 小时前
【Linux】日志设计模式与实现
linux·运维·设计模式
学问小小谢5 小时前
第26节课:内容安全策略(CSP)—构建安全网页的防御盾
运维·服务器·前端·网络·学习·安全
charlie1145141919 小时前
从0开始使用面对对象C语言搭建一个基于OLED的图形显示框架(协议层封装)
c语言·驱动开发·单片机·学习·教程·oled
马船长9 小时前
[BSidesCF 2020]Had a bad day1
学习
黄交大彭于晏10 小时前
三端回链增加截图功能
学习
linwq810 小时前
设计模式学习(二)
java·学习·设计模式
深度Linux10 小时前
Linux网络编程中的零拷贝:提升性能的秘密武器
linux·linux内核·零拷贝技术