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虚拟机上安装docker,lin检查内核版本,必须是3.10及以上
uname -a
yum update
yum install docker
yum remove docker-*
systemctl start docker
启动失败:Failed to start dcoker.service: Unit not found,执行:
systemctl start docker.service
启动失败:其他问题:
卸载docker——》升级系统——》install——》start
开机启动docker:
systemctl enable docker
关闭开机启动:
systemctl disable docker.service
官方文档:https://hub.docker.com/
docker serach 镜像名
docker pull 镜像名:tag
docker pull registry.docker-cn.com/library/镜像名:tag
docker images
docker rmi 镜像
docker run --name mytomcat -d -p 8888:8080 tomcat:latest --restart=always
当容器启动失败时,会生成日志
docker logs 容器
docker stop 容器
docker start 容器
docker rm 容器
docker container update --restart=always 容器
docker ps
docker ps -a
docker pull tomcat
docker run -d -p 8080:8080 --restart=always --name mytomcat tomcat
docker pull mysql
docker run -d -p 3306:3306 --restart=always --name mymysql -e MYSQL_ROOT_PASSWORD=chen mysql
docker pull redis
docker run -d -p 6379:6379 --restart=always --name myredis redis
docker pull rabbitmq:management
docker run -d -p 5672:5672 -p 15672:15672 --restart=always --name myrabbitmq rabbitmq:management
目前安装失败,在windows系统安装成功但是没有使用起来,暂时弃坑。
参考:https://blog.csdn.net/mmingxiang/article/details/81980392
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker run -d -p 1521:1521 --restart=always --name myoracle registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
用户:root:helowin
用这个安装失败,提示磁盘空间不够,但是df -h和df-i都显示还有可用空间。
docker pull oraclelinux
mkdir /my/oracle/data -pv
docker run --name myoracle -d -p 1521:1521 --restart=always -v /my/oracle/data:/u01/app/oracle oraclelinux
docker logs -f myoracle
docker run --name myoracle1 -d -p 1521:1521 --restart=always oraclelinux
依然有问题。
执行docker exec -it b2be8aaab8b6 /bin/bash时报错:
Error response from daemon: Container xx is restarting, wait until the container is running
也就是 run没有启动,docker ps 查看容器状态是Restarting
1、
docker search elasticsearch
2、
docker pull elasticsearch
注意,直接使用此命令是下载latest版本。报错
所以官网查看elasticsearch版本:https://hub.docker.com/_/elasticsearch?tab=tags&page=1&ordering=last_updated
docker pull elasticsearch:6.8.5
3、
9300是分布式应用时使用
docker run -d --restart=always --name myes -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms256m -Xms256m -Xmx256m" elasticsearch:6.8.5
docker pull zookeeper
docker run --name myzookeeper --restart always -d zookeeper -p 2181:2181 -p 2888:2888 -p 8080:8080
启动失败