1、宿主机创建容器前,准备工作
- 拉取ubuntu16.04镜像
sudo docker pull ubuntu:12.04
- 查看镜像列表
- 拉取新镜像前
- 新镜像拉取后
- 以下操作看其他博客建议操作的,我实际没有进行设置,但是后也创建启动成功了,不知道后边会有什么影响
#创建容器前准备工作,先把宿主机系统防火墙起开,放通端口,可参考之前blog:Linux系统防火墙放行端口
此处是
#查看系统防火墙状态
systemctl status firewalld
#开启系统防火墙
systemctl start firewalld
#放行端口
firewall-cmd --zone=public --add-port=10023/tcp --permanent && \
firewall-cmd --zone=public --add-port=10081/tcp --permanent && \
firewall-cmd --reload
#查看放通的端口列表
firewall-cmd --list-port
#若要再关闭系统防火墙
systemctl stop firewalld
创建并启动 ubuntu12.04容器
$ sudo docker run -it --name fsl_xxxx --privileged -p 10023:22 -p 10081:80 -h u12-xxxx-fsl -v /home/doceker_container/container/u1204-d-1:/home/u12-d1-ys ubuntu:12.04 /bin/bash
参数: | 说明: |
---|---|
-it | 终端运行方式,若用-d参数发现不行,故用此 |
–name | 创建的容器名,方便启动、关闭、重启、删除容器等操作 |
–privileged | 加上之后容器内部权限更多,不会出现权限问题 |
-p 10022:23 -p 10081:80 | 指定端口映射,可同时放通多个端口 |
-h u16-docker-1 | 指定容器主机名 |
-v /home/fendouge/container/u1604-d-1:/home/u16-d1-ys | 宿主机目录映射到容器内部目录(目前就知道这个用来拷贝文件挺方便) |
**ubuntu:16.04 ** | 本地ubuntu镜像版本 |
/bin/bash | 启动方式 |
执行完以上命令后,成功的话就可以直接进入容器中了。
进入容器执行的命令:
sudo docker exec -it fsl_xxxx /bin/bash
参数 | 说明 |
---|---|
exec | 执行进入容器参数 |
-it | 终端模式显示 |
u16-d1 | 创建时的容器名 |
/bin/bash | 启动方式 |
查看创建的所有容器:
sudo docker ps -a
发现容器已关闭,重启:
sudo docker start fsl_xxxx
#或者
sudo docker restart fsl_xxxx
#在进入容器
sudo docker exec -it u16-d1 /bin/bash
在容器内部操作
先初始化 apt-get
apt-get update
- 安装 vim编辑器
apt-get install vim
apt install iputils-ping
apt install net-tools