先到网易蜂巢中心查找镜像
https://c.163yun.com/hub#/m/home/
laixiaoxing xihanzhiwen2017
进去之后
library表示是官方库
点进去之后
复制地址
docker pull hub.c.163.com/library/nginx:latest
拉取下来
然后docker images
可以看到镜像名字为hub.c.163.com/library/nginx
再docker run hub.c.163.com/library/nginx
此时会发现控制台没有反应 因为这个是前台运行,我们看下另一个控制台
docker ps 可以查看启动的容器信息 发现已经启动
终止前台进程 ctr+c4
如果要后台运行 docker run -d 镜像名
返回的是一个容器的
id 58b262f5947d7b23fdb7ce83a735b1307971b76eb5e8855db22caf79763e0932
ps:查看一个命令的作用 docker 命令名 --help
比如说 docker ps --help 作用是 列出容器
docker exec --help 作用是 在运行的容器里执行一个命令
比如说 docker exec -it 58b bash
//参数i 表示保证我们的输入有效 t表示分配一个终端 58b是之前的容器ID前几位 会自动识别 bash表示打开一个终端
相当于是一台新的linux系统 ,里面支持所有的linux命令
现在来运行nginx 先查找到位置
ps命令可以查看启动的进程
报这个的原因是因为该nginx镜像没有打包ps命令
使用如下命令安装
apt-get update && apt-get install procps
安装完毕 输入命令
exit 命令退出
docker stop 容器id 停止容器运行
docker网络
网络类型有Bridge 独立一个网络,host 和主机一致的网络环境, None 无网络
端口映射:
将主机端口映射到访问docker端口
host模式 直接连接eth0主机的网卡
Bridge则是网桥
docker run -d 表示后台运行 -p表示开启端口映射 8080是主机端口 80是容器端口
将主机端口映射到容器端口
访问docker容器内的应用
此时访问 成功访问到容器内的nginx
用docker ps 可以看到容器端口80和主机端口8080映射上了
还有另一个命令docker run -d -P hub.c.163.com/library/nginx 随机开启的端口 和容器映射
此时查看本机的端口 natstat命令可以查看端口
netstat -na|grep 32768
可以看到32768开启
同时访问 也成功