docker的核心概念
docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);
docker客户端(Client):连接docker主机进行操作;
docker仓库(Registry):用来保存各种打包好的软件镜像;
docker镜像(Images):软件打包好的镜像;放在docker仓库中;
docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
使用Docker的步骤:
1)、安装Docker
2)、去Docker仓库找到这个软件对应的镜像;
3)、使用Docker运行这个镜像,这个镜像就会生成一个Docker容器;
4)、对容器的启动停止就是对软件的启动停止;
查看linux的ip地址 ip addr
在linux虚拟机上安装docker
1、检查内核版本,必须是3.10及以上
uname -r
当前版本号:3.10.0-327.el7.x86_64
2、安装docker
yum install docker
在linux 终端执行此命令时,提示错误
you need to be root to perform this command
是提示要获取root权限
输入su 回车输入密码
即可解决
3、输入y确认安装
4、启动docker
[root@localhost ~]# systemctl start docker
[root@localhost ~]# docker -v
Docker version 1.12.6, build 3e8e77d/1.12.6
5、开机启动docker
[root@localhost ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
6、停止docker
systemctl stop docker
如果出现:Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
解决方法:
vi /etc/sysconfig/docker
方向键移动到OPTIONS行,按下insert,增加=false
按esc保存
:wq保存并退出
使用docker安装redis
1 https://hub.docker.com/ 在dockerhub官网搜索redis 这个连向国外的地址
最好使用 https://www.docker-cn.com/ 选择镜像加速
输入命令:
docker pull registry.docker-cn.com/library/redis
安装完成,可用 docker images查看
*********************************************************************************************************
启动:
docker run -d -p 6379:6379 --name myredis registry.docker-cn.com/library/redis
出现错误:Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "write parent: broken pipe".
解决方法:
1. 更新内核 yum update
2.更新内核后重启计算机
3.cat /etc/redhat-realease 查询当前centos版本
4.yum clean all
5.yum update
6.vi /etc/profile
在最后一行加上 export _JAVA_SR_SIGNUM=12
*********************************************************************************************
查看:docker ps
就这样,环境搭建完成.
1.停止所有的container,这样才能够删除其中的images:
docker stop $(docker ps -a -q)
如果想要删除所有container的话再加一个指令:
docker rm $(docker ps -a -q)
2.查看当前有些什么images
docker images
3.删除images,通过image的id来指定删除谁
docker rmi <image id>
想要删除untagged images,也就是那些id为<None>的image的话可以用
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
要删除全部image的话
docker rmi $(docker images -q)