VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > Java教程 >
  • Docker学习

Docker简介

Docker是一个开源的应用容器引擎,是一个轻量级容器技术。Docker支持将软件编译成一个镜像,然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像,运行中的这个镜像称为容器,容器启动是非常快速的。

Docker安装


 
# 1.检查centos内核版本,必须是3.10及以上
 
uname -r
 
# 升级内核(选做)
 
yum update
 
# 2.安装docker,输入y确认安装
 
yum install docker
 
# 3.启动docker
 
systemctl start docker
 
# 4.开机启动docker
 
systemctl enable docker
 
# 5.停止docker
 
systemctl stop docker
 
# 6.查看版本
 
docker -v

Docker命令


 
# 镜像命令
 
 
 
# 1.搜索(我们经常去https://hub.docker.com上检索镜像的详细信息,如镜像的tag)
 
docker search 关键字
 
 
 
# 2.拉取(:tag是可选的,tag表示标签,多为软件的版本,默认是latest最新版本)
 
docker pull 镜像名:tag
 
 
 
# 3.列表(查看所有本地镜像)
 
docker images
 
 
 
# 4.删除
 
docker rmi image-id
 
 
 
 
 
# 容器命令
 
 
 
# 1.运行
 
# -d 后台运行
 
# -p 指定端口映射
 
# -e 设置参数
 
# -v 目录挂载
 
# --name 自定义容器名
 
# image-name 指定镜像模版
 
docker run -d -p 主机端口:容器内部端口 --name container-name image-name
 
 
 
# 2.列表
 
# 查看所有容器
 
docker ps -a
 
# 查看所有运行中的容器
 
docker ps
 
 
 
# 3.启动
 
docker start container-id
 
 
 
# 4.停止
 
docker stop container-id
 
 
 
# 5.删除
 
docker rm container-id
 
 
 
 
 
# 其它命令
 
 
 
# 1.查看日志
 
# -f 跟踪日志输出
 
# -t 显示时间戳
 
docker logs container-id/container-name
 
 
 
# 2.进入容器
 
# 进入容器后开启一个新的终端,可以在里面操作
 
docker exec -it container-id/container-name /bin/bash
 
 
 
# 3.退出容器
 
exit
 
 
 
# 4.重启容器
 
docker restart container-id/container-name
 
 
 
# 4.查看版本
 
docker -v

 

安装MySQL


 
# 拉取指定版本5.7
 
# MYSQL_ROOT_PASSWORD=admin表示root的初始密码
 
docker pull mysql:5.7
 
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1234 --name mymysql mysql:5.7

安装Redis


 
docker pull redis
 
docker run -itd -p 6379:6379 --name myredis redis
 
 
 
# 连接redis客户端
 
docker exec -it myredis /bin/bash
 
redis-cli

安装RabbitMQ


 
docker pull rabbitmq:management
 
docker run -d --name myrabbitmq -p 15672:15672 -p 5672:5672 rabbitmq:management

安装ElasticSearch


 
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
 
docker run -d --name myelasticsearch -p 9200:9200 -p 9300:9300 docker.elastic.co/elasticsearch/elasticsearch:6.3.2
 
 
 
# 安装ik分词器(可选)
 
docker exec -it myelasticsearch /bin/bash
 
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.2/elasticsearch-analysis-ik-6.3.2.zip
 
 
 
# 配置文件修改(可选,需要修改或查看时执行)
 
docker exec -it myelasticsearch /bin/bash
 
vi /usr/share/elasticsearch/config/elasticsearch.yml

部署SpringBoot项目

有了上面这些环境后,接下来就可以部署我们的SpringBoot项目了,以我的博客项目为例:

在服务器中创建一个blog文件夹;

本地使用idea编译打包项目后得到blog-web-0.0.1-SNAPSHOT.jar,上传至服务器blog文件夹中;

本地创建一个Dockerfile文件,内容如下:


 
FROM java:8
 
EXPOSE 8089
 
 
 
VOLUME /tmp
 
 
 
ENV TZ=Asia/Shanghai
 
RUN ln -sf /usr/share/zoneinfo/{TZ} /etc/localtime && echo "{TZ}" > /etc/timezone
 
 
 
ADD blog-web-0.0.1-SNAPSHOT.jar /app.jar
 
RUN bash -c 'touch /app.jar'
 
ENTRYPOINT ["java","-jar","/app.jar"]
 
 
 
# 说明:
 
# FROM java:8 表示基于jdk8环境;
 
# EXPOSE 8089 表示对外暴露的端口是8086
 
# VOLUME /tmp 表示挂载到/tmp目录
 
# ADD blog-web-0.0.1-SNAPSHOT.jar /app.jar 表示把jar包复制到镜像服务里面的根目录,并改名为app.jar
 
# RUN bash -c 'touch /app.jar' 表示执行创建app.jar
 
# ENTRYPOINT ["java","-jar","/app.jar"] 表示执行启动命令java -jar

将Dockerfile文件上传至服务器blog文件夹中;

构建镜像并启动容器,在blog文件夹下执行。


 
# 构建镜像,注意后面有个点
 
docker build -t blog-web .
 
 
 
# 启动容器
 
docker run -p 8089:8089 --name blog-web -d -e JAVA_OPTS="-Xms1024m -Xmx1024m" blog-web
 
 
 
# 查看日志
 
docker logs -f blog-web
 
 
 
# 如果想要重新打包构建的话需要停止容器,删除镜像,再重新构建启动就好了

这样就完成啦,是不是很简单!

 

来源:https://www.cnblogs.com/zhanglei-code/p/15423109.html


相关教程