Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
一、dock的安装:
- 准备安装包:社区版docker17.03.1:
[root@docker1 ~]# cd docker_rpm/
[root@docker1 docker_rpm]# ls
container-selinux-2.21-1.el7.noarch.rpm
docker-ce-18.06.1.ce-3.el7.x86_64.rpm
libsemanage-2.5-8.el7.x86_64.rpm
libsemanage-python-2.5-8.el7.x86_64.rpm
pigz-2.3.4-1.el7.x86_64.rpm
policycoreutils-2.5-17.1.el7.x86_64.rpm
policycoreutils-python-2.5-17.1.el7.x86_64.rpm
==============================================
[root@docker1 docker_rpm]# yum install -y *
===========================================
- 开启服务
[root@docker1 docker_rpm]# systemctl start docker.service
- 检测docker是否成功开启:
[root@docker1 docker_rpm]# docker info
======================================
- docker命令补齐:
[root@docker1 docker_rpm]# yum install -y bash-completion
=========================================================
二、将镜像加到docker仓库,运行镜像,端口映射:
- 将2048小游戏的镜像添加到docker仓库中:
[root@docker1 ~]# docker load -i game2048.tar
=============================================
- 查看docker仓库的所有镜像:
[root@docker1 ~]# docker images
================================
- 后台运行镜像,并做一个端口映射,把本机的80端口映射到容器的80端口。
[root@docker1 ~]# docker run -d -p 80:80 --name vm1 game2048
============================================================
- 查看正在运行的镜像:
[root@docker1 ~]# docker ps
===========================
- 在浏览器直接访问本机ip,端口映射到容器内,就可以愉快地玩2048小游戏了
三、一些简单的docker命令
docker运行后系统会自动添加一个docker设备并且分配一个IP:
[root@docker1 ~]# ip a
=======================
- docker版本查看:
[root@docker1 ~]# docker version
======================
- doeker信息查看:
[root@docker1 ~]# docker info
- 查看docker进程:
#正在运行的docker进程
[root@docker1 ~]# docker ps
#所有的docker进程
[root@docker1 ~]# docker ps -a
- 端口映射:nginx服务在本机使用8080端口,在容器vm2中使用80端口:
docker run -d --name vm2 -p 8080:80 nginx
- 停止容器及运行容器:
docker container stop vm1
docker stop vm1
docker container start vm1
docker start vm1
- 查看镜像操作历史:
docker history game2048
- 交互式操作镜像:
docker run -it --name vm1 ubuntu #执行后会占用当前的终端,可以用快捷键ctrl+p+q退出,
docker attach vm1 #重新连接vm1容器
- 删除在运行的容器:
[root@docker1 ~]# docker rm -f vm1
==================================
[root@docker1 ~]# docker ps -a
==============================
- 删除docker仓库中的镜像:
[root@docker1 ~]# docker rmi game2048:latest
============================================
更多命令请参考docker –help