Java为例
● SpringBoot打包成可执行jar
● 把jar包上传给服务
● 服务器运行java -jar
所有机器都安装Docker,任何应用都是镜像,所有机器都可以运行
1、首选将idea中的java项目打包,并编写Dockerfile文件
FROM openjdk:8-jdk-slim
LABEL maintainer=zhansan
COPY java-demo-0.0.1-SNAPSHOT.jar /app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

2、将上述jar和Dockerfile文件上传到服务器

3、使用命令将代码打包成镜像
# java-demo:v1.0 指的是打包后的镜像名及版本
docker build -t java-demo:v1.0 .

4、查看镜像是否打包成功
5、启动容器
docker run -d -p 8080:8080 java-demo:v1.0
6、查看容器是否启动成功
docker ps

7、查看容器日志
# -f是实时查看的意思
docker logs -f 容器id

下边案例是将自己的镜像推送到docker hub中
1、首先登录docker hub
docker login

2、给旧镜像起名
docker tag java-demo:v1.0 zhangsan/java-demo:v1.0


4、推送到docker hub
docker push zhangsan/java-demo:v1.0
5、到docker hub查看是否推送成功

6、别的机器拉取刚刚推送到docker hub上的镜像
docker pull zhangsan/java-demo:v1.0

7、别的机器运行刚刚从docker hub上拉取的镜像
docker run -d -p 8080:8080 --name myjava-app zhangsan/java-demo:v1.0

8、在服务器上访问到另外一塔服务器部署的应用

部署一个Redis+应用,尝试应用操作Redis产生数据
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
# redis使用自定义配置文件启动
# 将容器内Redis配置文件挂载到宿主机:-v /data/redis/redis.conf:/etc/redis/redis.conf
# 将容器内Redis数据挂载到宿主机 /data/redis/data:/data
docker run -v /myregister/redis/redis.conf:/etc/redis/redis.conf \
-v /myregister/redis/data:/data \
-d --name myredis \
-p 6379:6379 \
redis:latest redis-server /etc/redis/redis.conf

docker restart redis