1.Docker的安装
Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件的速度。
Docker容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器。 容器更多的用于表示 软件的一个标准化单元。由于容器的标准化,因此它可以无视基础设施(Infrastructure)的差异,部署到任何一个地方。另外,Docker也为容器提供更强的业界的隔离兼容。
Docker因其便捷性、隔离性和开源性,成为微服务的最好平台。
2.Docker上部署和运行JAVA服务
首先需要做的,是Docker的安装。
在Windows上,Docker的安装比较复杂。Docker的安装条件是:
1)64位Windows 10 Pro、Enterprise或者Education版本(Build 10586以上版本,需要安装1511 November更新)
2)在系统中启用Hyper-V。如果没有启用,Docker for Windows在安装过程中会自动启用Hyper-V(这个过程需要重启系统)。
点击Docker安装软件进行安装。
在Linux上,Docker的安装就比较简单了,直接执行如下命令 就可以默认安装。
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
注意:
默认的Docker配置最好不要更改,因为Dockers现在对代理不支持,如果发现有代理可能编译失败。
Docker上部署JAVA程序(假设已经打包好JAR包)的步骤如下:
1)在JAR包的同级目录下建立Docker的配置文件,文件样例如下:
Windows:
FROM openjdk:8
MAINTAINER wangzhe001
LABEL name="demo" version="1.0" author="wangzhe001"
COPY Test.jar wangzhe001.jar
CMD ["java", "-jar", "wangzhe001.jar"]
Linux
FROM openjdk:8
MAINTAINER wangzhe001
LABEL name="demo" version="1.0" author="wangzhe001"
VOLUME /tmp
ADD Test.jar wangzhe001.jar
RUN bash -c 'touch /wangzhe001.jar'
ENTRYPOINT [ "java","-Djava.security.egd=file:/dev/./urandom","-jar","/wangzhe001.jar" ]
2)运行
docker build -f .\Dockerfile -t demo . (该操作为生成镜像(image))
docker run -it --name=demo -p 8090:8090 demo (该操作为生成容器)
3.发生错误置后Docker上如何重新安装服务
如果发生安装错误,需要更改Docker,可以进行如下操作:
docker images(确定镜像ID)
docker ps –a (确定容器,并找到容器ID)
docker rm 容器ID(删除容器)
docker rmi 镜像ID(删除镜像)
然后重新建立镜像和容器。
4.Docker如何启动已存在的服务
启动一个已经存在镜像的命令为:
docker start 容器ID或容器名