Docker简单使用

Doker安装相关

这是我第一次使用docker,安装时还是浪费了大量时间,整理一下简单使用的笔记,后续在深入了解
环境:(由于win10系统版本过低,安装Docker for Windows失败,也可能我菜,最终找的解决办法如下)
虚拟机安装Centos7,然后在centos 7 中安装Docker(套娃~)

centos 7 安装

[root@bogon ~]# cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)

安装:参考阿里的文章:
阿里云下面的文章
https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.5c041b11hnXlmw

# step 1: 安装必要的一些系统工具
1.yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
2.yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
3.sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
4.yum makecache fast
   yum -y install docker-ce
# Step 5: 开启Docker服务
4.service docker start

ubuntu 安装

ubuntu安装docker(这个我没做,顺利整理出来,后续万一有用呢)

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

Docker的基础命令

需要新建或者修改镜像源

#新建或者修改以下文件
vi /etc/docker/daemon.json 

#添加内容
{ 
	"registry-mirrors":["https://registry.docker-cn.com"] 
}

#镜像源
官方:https://hub.docker.com/
国内
阿里云 - 开发者平台:https://dev.aliyun.com/
阿里云 - 容器Hub服务控制台:https://cr.console.aliyun.com/
https://www.docker-cn.com/

# 配置完之后执行下面的命令,以使docker的配置文件生效
systemctl daemon-reload 
systemctl restart docker

浏览源地址内的镜像

docker search redis
docker search -s 30 redis	#查找收藏数大于30的 redis
返回信息如下:
NAME                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
redis                            Redis is an open source key-value store that…   10428     [OK]       
grokzen/redis-cluster            Redis cluster 3.0, 3.2, 4.0, 5.0, 6.0, 6.2      83                   
sameersbn/redis                                                                  83                   [OK]
rediscommander/redis-commander   Alpine image for redis-commander - Redis man…   72                   [OK]
参数 :
--no-trunc: 显示完整的镜像描述
-s: 列出收藏数 不小于 指字值的镜像
--automated: 只列出 automated build类型的镜像

获取镜像到本地

docker pull tomcat(tomcat可换成想要的镜像,如:centos,ubuntu..)
docker pull 镜像名:tag
# docker pull redis 等价于 docker pull redis:latest
# 参数 :
:tag 是可选的,tag表示标签,多为软件的版本,默认是latest

查看本地镜像

docker images	#镜像列表:列出本地所有镜像
返回如下:
REPOSITORY                                        TAG           IMAGE ID       CREATED       SIZE
registry.cn-beijing.aliyuncs.com/daxia/qingscan   20211231_01   5f5a1b38496c   11 days ago   3.4GB
mysql                                             5.6           dd3b2a5dcb48   3 weeks ago   303MB
area39/pikachu                                    latest        28e6ebc041de   2 years ago   853MB
参数 : 
-a:列出本地所有的镜像(含中间映像层)
-q:只显示镜像ID
--digests:显示镜像的摘要信息
--no-trunc:显示完整的镜像信息
-aq:显示所有的镜像id:

删除本地镜像

docker rmi image-id		#删除指定的本地镜像
docker rmi -f 镜像id		#删除单个镜像
docker rmi -f 镜像名A:tag 镜像名B:tag	#删除多个
docker rmi -f $(docker images -aq)	#删除全部

启动容器

例 1:
docker run ‐‐name mytomcat ‐d tomcat:latest
--name	:为容器取名
-d		:指用附加进程方式启动容器(理解为后台运行?)
例 2:
docker run --name piakchu -d -p 9002:80 area39/pikachu
-p		:将主机的端口映射到容器的一个端口 主机端口:容器内部的端口
area39/pikachu和tomcat:latest	:是仓库名

查看本地容器

docker ps		#查看运行的容器
docker ps -a	#查看所有容器,包括已停止的容器

关闭容器

例 1:
docker stop 容器ID或容器名
例 2:
docker stop -t=60 容器ID或容器名
参数 
-t	:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态
例 3:
docker kill 容器ID或容器名 #直接关闭容器

打开停止的容器

#首先通过 docker ps -a 查看所有容器,获取容器id
docker ps -a
返回如下:
[root@bogon ~]# docker ps -a
CONTAINER ID   IMAGE                                                         COMMAND                  CREATED        STATUS       PORTS                                             NAMES
60cce5f1d11d   area39/pikachu                                                "/run.sh"                13 hours ago   Up 2 hours   3306/tcp, 0.0.0.0:9002->80/tcp, :::9002->80/tcp   piakchu
cbddfcc97b00   registry.cn-beijing.aliyuncs.com/daxia/qingscan:20211231_01   "/bin/bash -c 'php /…"   13 hours ago   Up 2 hours   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp         qingscan
b989c2578276   mysql:5.6                                                     "docker-entrypoint.s…"   13 hours ago   Up 2 hours   0.0.0.0:33306->3306/tcp, :::33306->3306/tcp       mysqlser
[root@bogon ~]# 
#获取到CONTAINER ID
#<------------------------------------------->
docker start 60cc  #支持模糊查询,前几位就可以

重启容器

docker restart 容器ID或容器名
参数 :
-t	: 关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态

删除容器

docker rm 容器id

参考以下大佬的文章,非常感谢!!!

https://www.cnblogs.com/personblog/p/10762875.html
https://blog.csdn.net/xiaojin21cen/article/details/81321336?utm_source=blogxgwz1
https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.5c041b11hnXlmw

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值