ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Docker 急速入门

2021-11-20 18:00:07  阅读:150  来源: 互联网

标签:容器 run 入门 -- 急速 docker Docker name


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 官网:https://hub.docker.com/

 

例如:

运行 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,欢迎大家关注

 

标签:容器,run,入门,--,急速,docker,Docker,name
来源: https://www.cnblogs.com/w84422/p/15580575.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有