初入docker
什么是虚拟化
什么是docker
待续
为什么需要使用docker
- 我的linux系统是centos6.8,由于上面安装的依赖太多,移植很繁琐,甚至会遇见很多不可知的问题,但是我必须使用centos7.5,那么我需要docker。
- redis3.4用的好好的,不过redis4.0出来了,性能更好了,这就需要我部署4.0,我们都知道升级软件一不注意就会造成不兼容问题。
- 写好了一个应用,但是就算移植到大致一样的操作系统上,也有可能出问题。
docker的安装
docker基本概念
image:镜像,相当于一个类。
container:容器,相当于实例化一个类
docker的基本命令
启动docker
systemctl start docker
关闭docker
systemctl stop docker
查看当前镜像
docker images
主机与container之间的相互复制文件
docker cp resource dist
docker cp /www/runoob 96f7f14e99ab:/www/
docker cp 96f7f14e99ab:/www/runoob /www/
启动一个容器
docker run -t -i image /bin/bash
- docker run:启动container
- ubuntu:你想要启动的image
- -t:进入终端
- -i:获得一个交互式的连接,通过获取container的输入
- /bin/bash:在container中启动一个bash shell
查看运行中的容器
docker ps -a
退出容器
exit
进入容器
attach
container运行在后台,如果想进入它的终端使用:
docker attach container的id
exec
使用“docker attach”命令进入container(容器)有一个缺点,那就是每次从container中退出到前台时,container也跟着退出了。
要想退出container时,让container仍然在后台运行着,可以使用“docker exec -it”命令。每次使用这个命令进入container,当退出container后,container仍然在后台运行,命令使用方法如下:
docker exec -it goofy_almeida /bin/bash
docker打包上传hub
构建镜像
构建Docker镜像有以下两种方法:
1、使用docker commit命令。
2、使用docker build命令和 Dockerfile 文件。
这里介绍commit。
当我们修改了一个container并退出后,可以查看退出的container的id,运行如下命令:
docker commit -m="A new custom image" --author="yangyuya" b437ffe4d630 test/apache2:webserver
解释:
-m 用来指定创建镜像的提交信息;
–author 用来列出该镜像的作者信息;
b437ffe4d630 是id;
最后自定义一个test/apache2:webserver标签。