Centos 7 安装 docker
**环境 Centos 7 **
docker 安装
1停止禁用防火墙
systemctl stop firewalld
systemctl mask firewalld
禁用 selinux
setenforce 0
配置 yum 源,安装 docker
yum install docker-engine
启动测试
systemctl start docker
ifconfig 启动后可以看见 docker0
docker version
搜索 docker search
下载 docker pull busybox
查看帮助 docker help pull
查看镜像 docker images
导入镜像
[root@localhost ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE
[root@localhost ~]# docker load <busybox.tar
c5183829c43c: Loading layer 1.36 MB/1.36 MB
Loaded image: busybox:latest32.77 kB/1.36 MB
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest f6e427c148a7 3 weeks ago 1.146 MB
导出镜像
docker save busybox >busybox.tar
导入所有文件
unzip docker_img.zip
cd docker_images
for i in *;do docker load <${i};done
利用镜像启动容器
docker run -it busybox /bin/sh
docker run -it centos /bin/bash
查看容器列表
docker ps
查看详细信息
docker inspect 21d2aeb977cc
docker inspect -f '{.NetworkSettings.IPAddress}' 21d2aeb977cc
docker 问题列表,及解答
问题:docker run -it busybox /bin/bash 报错问题
原因:
最后的命令是容器内部命令,容器内,存在才可以执行
可以不指定,不指定启动默认命令
问题:docker run -it centos 退出后,配置全部丢失
原因:
run 启动的是新的容器,老的容器退出后就停止了
启动管理一个老的容器可以使用 docker start|stop|restart
问题:老容器启动以后,怎么在进入?
docker exec -it 容器id /bin/bash
docker attach 容器id
exec 与 attach 的区别
exec 单独启动命令运行,与容器启动的终端无关
attach 不启动新的命令,直接连接 console 终端
exec 退出不会影响容器的运行
attach 退出后,容器结束
问题:如果我使用attach 连接容器后,怎么才能不结束容器?
解决方法:把容器放后台,使用快捷键 ctrl + pq
问题:attach 为什么退出后,容器会结束?
因为 attach 连接进容器的 pid 1 的进程,当 attach 结束时候,pid 为 1 的进程被结束
所有整个容器被销毁
问题:docker run -it nginx 没响应?
因为 nginx 启动的默认 cmd 时 nginx daemon,该进程不是一个交互式的进程
docker run 使用
-i 交互式的
-t 分配终端
-d 把容器放在后台运行
docker run -it centos cmd 启动一个交互式的容器,在前台运行
docker run -d centos cmd 启动一个非交互式的容器,在后台运行
docker run -itd centos cmd 启动一个交互式的容器,在后台运行
测试
docker run -it centos /bin/bash 成功
docker run -d centos /bin/bash 失败
docker run -itd centos /bin/bash 成功
docker run -it nginx nginx 失败
docker run -d nginx nginx 失败
docker run -itd nginx nginx 失败
docker run -it nginx nginx -g “daemon off;” 成功
docker run -d nginx nginx -g “daemon off;” 成功
docker run -itd nginx nginx -g “daemon off;” 成功
交互式的进程启动要使用 it , 非交互式的使用 d ,交互式的放后台使用 itd
启动 bash 的正确姿势 docker run -itd centos
启动 nginx 的正确姿势 docker run -d -p 80:80 nginx
小练习: 启动一个 nginx 的容器,修改默认首页为 “hello world”
设置IP伪装访问网络
[root@room9pc19 docker]# ifconfig
enp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 172.40.50.119 netmask 255.255.255.0 broadcast 172.40.50.255ether 94:de:80:81:e3:53 txqueuelen 1000 (Ethernet)RX packets 5947707 bytes 593709850 (566.2 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 12611909 bytes 18788418441 (17.4 GiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
物理机上查找上网用的网卡
打开路由转发
sysctl -w net.ipv4.ip_forward=1
设置伪装上网
[root@room9pc19 docker]# iptables -t nat -I POSTROUTING -s 192.168.4.0/24 -o enp2s0 -j MASQUERADE
在虚拟机里面设置默认路由
ip route replace default via 192.168.4.254
模拟 docker 端口绑定转发
iptables -t nat -I PREROUTING -d 192.168.4.10 -p tcp --dport 8080 -i eth0 -j DNAT --to 172.17.0.3:80
docker run -d -p 8080:80 nginx
Centos 7 安装 docker相关推荐
- centos 7 安装docker 并设置阿里云镜像仓库
centos 7 安装docker 并设置阿里云镜像仓库 yum install -y wget yum update yum install -y deltarpm ================ ...
- CentOS上安装Docker及docker常用命令
这里写目录标题 一.在CentOS上安装Docker Engine 1.Docker Engine安装 1.1 卸载以前的docker 1.2 安装方法 1.2.1 用repository方法安装 0 ...
- 在CentOS上安装Docker的步骤
在CentOS上安装Docker的步骤如下: 更新系统: sudo yum update 添加Docker官方存储库: sudo yum install -y yum-utils sudo yum-c ...
- Docker系列 一. CentOS上安装Docker
1.环境&工具: 阿里云轻量级服务器.Centos7系统.FinalShell(其他连接客户端也可以) 2.步骤: 2.1 安装docker 2.1.1 以root身份登录服务器 2.1.2查 ...
- Docker实践:Centos下安装Docker并简单的使用
1 环境介绍 版本信息: [root@localhost]# cat /proc/version Linux version 3.10.0-514.el7.x86_64 (builder@kbuil ...
- Linux 64位 CentOS下安装 Docker 容器,启动、停止
一.Docker简介 Docker 提供了一个可以运行你的应用程序的封套(envelope),或者说容器,是轻量级的"容器引擎+映像仓库",在LXC(linux轻量级容器)的基础上 ...
- CentOS上安装Docker (图解)
更简单的办法:三分钟装好 Docker ( 图解) 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. // 用上面那个办法吧,简单多了,下面这个方法看 ...
- CentOS 8 安装 Docker 报错 requires containerd.io >= 1.4.1, but none of the providers can be installed
CentOS 8.1安装 Docker 官方参考地址:https://docs.docker.com/install/linux/docker-ce/centos/ 里面包含包下载地址:https:/ ...
- CentOS 7 安装Docker
CentOS Docker 安装 Docker支持CentOS版本 · 在CentOS 7 上,要求系统64位.系统内核版本为 3.10 以上 · CentOS-6.5 上,要求系统64位.系统内核版 ...
- 【Linux】CentOS 7 安装 docker
1. 确定是CentOS 7 及以上版本 cat /etc/redhat-release 2. yum安装gcc相关 yum -y install gcc yum -y install gcc-c++ ...
最新文章
- predicate 列存储索引扫描_在SQL SERVER中导致索引查找变成索引扫描的问题分析
- linux lua ide,mac os上开发lua用什么ide
- EF Core 3 的 40 个中断性变更
- 一些常用正则表达式片段的分析
- Kali渗透测试——利用metasploit攻击靶机WinXP SP1
- 小团队项目管理开源工具_超越指标:如何在当今的开源项目中以团队方式运作
- 离婚冷静期有用吗?全国哪个省份的情侣最想结婚?大数据告诉你
- codeforces 369C Valera and Elections
- mqtt之C++编译
- Invisible Perturbations: Physical Adversarial Examples Exploiting the Rolling Shutter Effect 论文解读
- 图像分类系统之功能实现概要
- 077 logging模块
- 数据结构c语言版算法设计题,数据结构题集(C语言版)算法设计答案
- 安装SQL 2008的错误 等待数据库引擎恢复句柄失败。请查看 SQL Server 错误日志以了解可能的原因
- SVN 分支主干的合并
- 单测量矢量多目标精确DOA估计的高效稀疏表示算法
- 联想智能云教室安win7_联想智能云教室云部署.PDF
- 钢板弹簧matlab,Matlab/GUI在钢板弹簧悬架设计中的应用
- 思科模拟配置文件服务器,思科模拟服务器配置教程
- 聪明的猴子(BZOJ 2429)
热门文章
- torch中manual_seed的作用
- 基于ESO的永磁同步电机无感FOC 采用线性扩张状态观测器(LESO)估计电机反电势,利用锁相环从反电势中提取位置和转速信息
- ‘When we dream, we have the perfect chemical canvas for intense visions’ “入梦时,我们就拥有了能够呈现强烈幻象的完美化学画布”
- 这帮死磕技术的理工男造了一支笔
- 做好SEO必备的三步骤
- 欧标IEC62056 兰吉尔关口电表无线抄表数据采集方案
- ansible从入门到放弃
- squirrelmail 小松鼠的安装和配置
- ASP.NET.3.5揭秘
- SuperMap iDesktop常见问题解答集锦(六)