Docker 急速入门

21 篇文章 0 订阅
6 篇文章 0 订阅

目录

1. 概述

2. 在 CentOS7 安装 Docker

3. Docker 的常用命令

4. 综述

5. 个人公众号


1. 概述

之前聊了很多 SpringCloud 相关的话题,今天我们来聊聊服务容器 Docker。

2. 在 CentOS7 安装 Docker

2.1 卸载旧版本的Docker 

# yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

2.2 安装仓库

# yum install -y yum-utils

# yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

2.3 安装 Docker

yum install docker-ce docker-ce-cli containerd.io

2.4 修改 Docker 配置

# cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
],
"data-root": "/data/docker"
}
EOF

2.5 启动 Docker

# systemctl start docker

2.6 验证 Docker 

# docker run hello-world

2.7 docker setup user: permission denied: unknown 错误解决

如果在执行 docker run hello-world 时,报如下错误:

docker setup user: permission denied: unknown

关闭 Selinux 即可解决。

# vim /etc/sysconfig/selinux

SELINUX=enforcing 改为 SELINUX=disabled

重启服务器

3. Docker 的常用命令

3.1 查看容器 

# 查看正在运行的容器

docker ps

# 查看所有容器

docker ps -a

3.2 查看所有镜像

docker images

3.3 运行容器

docker run -d --name 容器名  -p 宿主机端口:容器端口 -e 附加参数  容器tag名称:版本号

-d 代表后台运行

--name 是给容器起的名称

-p 是端口映射,可写多个,冒号前面的是宿主机的端口,冒号后面的是容器内服务的端口

-e 后面是一些容器自定义的附加参数

具体容器的运行方法可参考 Docker Hub 官网:Docker Hub

例如:

运行 RabbitMQ 例子

docker run -d --name myrabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:management

运行 Redis 例子

docker run -d -p 6379:6379 --name myredis redis:3.2 redis-server

运行 mysql 例子

docker run -d -p 3306:3306 --name mymysql -e MYSQL_ROOT_PASSWORD=123456 mysql

3.4 运行容器并对容器资源进行限制

docker run -d -c 4000 -m 200M --bikio-weight 300 nginx

-c 代表分配的 CPU 份额

-m 代表限制的最大内存

--bikio-weight 代表分配的 io  份额

3.5 目录映射

docker run --name myfront -p 8080:80 -v /root/foodie-cloud/foodie-shop:/usr/share/nginx/html -d nginx

-v 代表将容器的目录映射到宿主机,冒号前面是宿主机的路径,冒号后面是容器的路径

3.6 查看容器日志

docker logs -f 容器名/容器ID 

-f 代表实时刷新日志

3.7 进入容器操作

docker exec -it 容器名/容器ID /bin/bash

-it 是交互的意思

3.8 拷贝文件/文件夹到容器

docker cp 宿主机文件/文件夹 容器名:容器目录 

3.9 删除容器

docker rm 容器ID 

3.10 删除镜像

docker rmi 镜像ID 

3.11 启动、停止、重启容器

docker start 容器名 

docker stop 容器名

docker restart 容器名

3.12 启动、停止 Docker

systemctl start docker 

systemctl stop docker 

systemctl restart docker 

3.13 Docker开机启动

 chkconfig docker on

4. 综述

今天聊了一下 Docker 相关的知识 ,希望可以对大家的工作有所帮助。

欢迎帮忙点赞、评论、转发、加关注 :)

关注追风人聊Java,每天更新Java干货。

5. 个人公众号

追风人聊Java,欢迎大家关注

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

追风人聊Java

您的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值