Hzangyao

导航

docker安装和基础命令

2 docker安装与启动

2.1 docker架构

# cs 架构软件:客户端,服务端 ,相互通信使用resful

# Docker镜像与容器
	-镜像:
  	-安装了虚拟机---》ios镜像文件(win7,centos)--->装在虚拟机上--》启动起来了
    -把docker的镜像【当成】这个ios文件
    -docker镜像是一堆文件,必须运行起来,才是容器
    
  -容器:
  	-一个容器你【当成】,一台虚拟机上装了一个centos的操作系统
    
    
# docker软件的安装
# 镜像操作命令
# 容器操作命令(操作系统)

# 连接到容器中:安装软件,删除软件,copy文件

# 纯净的centos7--》启动器容器---》进入--》装python3.6---》反打包成镜像

# dockerfile构建镜像 --》非常小的文件,写几个命令就可以构建出镜像
# 镜像的备份与迁移
# 私有仓库

image-20220527105408183

# 安装 ---》centos7.9为例
# 卸载
# yum remove docker docker-common  docker-selinux docker-engine
# rm -rf /var/lib/docker

# 安装
yum update
# 安装依赖,之前装python,这些依赖装过了
yum install -y yum-utils device-mapper-persistent-data lvm2

# 设置阿里云的yum源--》官方源---》yum--》官方源找软件安装--》官方源里没有docker
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装---》docker-ce  社区版   ee专业版收费
yum install docker-ce
# 查看版本
docker -v   # 20.10.16   年月日

# 启动docker---》win 双击运行可执行文件
systemctl start docker

# docker命令(要学)

2.2 设置国内源

# 下载镜像---》hub.docker.com--->在国外---》慢---》配置国内镜像
	-阿里云
  -清华源的
 
# 不配没关系---》下的慢
# 阿里云云服务器---》很快

3 docker常用命令

# docker 仓库
	- 下载镜像--》从某个地方下载--》hub.docker.com---》远程仓库

3.1 Docker的启动与停止

# 启动docker:
systemctl start docker

# 停止docker:
systemctl stop docker

# 重启docker:

systemctl restart docker

# 查看docker状态:

systemctl status docker
# 开机启动:

systemctl enable docker

# 查看docker概要信息

docker info

# 查看docker帮助文档

docker --help

3.2 镜像相关命令

#1  查看,列出所有镜像
docker images  # 用它就行

# 2 搜索镜像---》有什么镜像再下---》一般不用--》直接去仓库网站看
docker search centos


# 3 拉取镜像
##### 镜像分标签---》mysql 5.5 /5.6 /5.7/ 8--->标签标志版本
docker pull mysql  # 下载最新版---》mysql 8
docker pull mysql:5.7   # 有这个标签才能下载,mysql 5.7
  
  
#4  删除镜像  可以空格 放多个id,删除度讴歌
docker rmi 镜像id
docker rmi a091

# 5 删除所有镜像---》面试被问到,如果一次性全部删除镜像
docker rmi `docker images -q`

3.3 容器相关命令

#1  查看所有在运行中的容器
docker ps
# 2 查看所有,运行的,停止的,暂停的
docker ps –a
# 3 查看停止的容器
docker ps -f status=exited


#####4  重点####   创建并运行容器---》俩命令合二为一--》创建   运行
docker run  # 创建并运行,有很多参数
-i:表示运行容器
-t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。

--name :为创建的容器命名,一个镜像可能起很多容器,给它命名,不写会自动命名
-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射


# 4.1 运行并进入到容器
docker run -it --name= mycentos centos:7
exit

# 4.2 运行不进入到容器
docker run -id --name= mycentos centos:7
返回id号,容器id号,唯一标识

# 4.3 在宿主机,想进入到容器内部操作  exe进
# exec 指定容器执行命令---》利用这个特点-->进入容器
docker exec -it 容器id/名字  /bin/bash
exit退出


# 5 停止与启动容器
docker stop 707be33301f7
docker start 707be33301f7

# 6  文件拷贝--->django项目---》cp进去
# 宿主机---》容器内部
docker cp 需要拷贝的文件或目录 容器名称:容器目录
  
# 容器内部---》宿主机
docker cp 容器名称:容器目录 需要拷贝的文件或目录


# 7 目录挂载
# 一旦挂载--》宿主机操作文件和容器操作文件都会影响
# 挂载多个目录,继续-v
docker run -id --name=mycentos3 -v /root/s20:/home/s20 centos:7
    
    
#  8 查看容器IP地址
docker inspect 容器名称
docker inspect --format='{{.NetworkSettings.IPAddress}}'  f69cf7c4f1cb
    
  
  
# 9 删除容器
docker rm 容器id
# 删除镜像---》必须该镜像运行的容器先删除

posted on 2022-07-06 21:35  Hzangyao  阅读(30)  评论(0编辑  收藏  举报