学习整理-Docker的使用

1:Docker是什么?
Docker就是一个类似于Linux系统、只不过这个linux系统基本的命令基本上全部被阉割了
Docker还可以看成是一个虚拟机
这个虚拟机和传统的虚拟机相比、命令变小了、体积变小了
这个虚拟机的运行要依赖于原生态的Linux系统 这个原生态的Linux系统可以认为是一个宿主机
Docker-----------------运行在宿主机上的 Docker的使用要依赖于原生态的Linux系统

2:Docker能干什么?

1:服务的安装(不用安装了 官方都已经做好了)

2:项目的部署

3:服务的编排

4:在一个宿主机上实现多节点部署

5:可以实现动态的扩容和缩容

3:Docker的安装(Linux系统)

4:Docker的基本的命令的使用
镜像:简单的说就是比人使用linux系统 已经按照好了一些服务、这些服务有一个统一的名字 这个名字就叫做镜像
Linux+MySQL
Linux+JDK
统一称为镜像
镜像有国内的、也有国外的 默认是从国外的镜像上下载 但是在安装的时候、可以指定使用国内的镜像
阿里巴巴的源

我们在进行项目部署的时候 也要生成镜像、我们一般是在别人的镜像的基础上生成新的镜像

容器:镜像在运行之后的实例 就称为容器 这个容器里面就可以运行很多服务了

docker的基本命令
docker images:查看当前本地一共有哪些镜像
docker pull 镜像的名字:版本号 从远程的库中下载某一个镜像
docker run -it 镜像的名字:版本号 (普通的启动 基本没有参数)
docker run -d(后台运行) -p(端口映射) --name(服务取名字) xiaobobo 镜像的名字:版本号 启动一个服务
docker ps -a :查看当前正在运行的容器
docker rm 容器的id :删除一个容器
docker stop 容器的id :停止一个容器
docker exec -it 容器的id /bin/bash :进入某一个容器
docker search 镜像的名字 :模糊搜索一个镜像
docker commit 容器的id 新容器的名字:新容器的版本
docker inspect 镜像的id :查看某一个镜像的详情信息
docker rmi 镜像的id :删除一个镜像

5:Docker来搭建MySQL的环境

6:Docker搭建Tomcat的环境

7:Docker搭建JDK的环境

8:Dockerfile的使用
Dockerfile用来干嘛的呢?
docker commit :就是在原有镜像的基础上 来手动的安装一些服务之后 生成一个新的镜像 docker commit命令
Dockerfile是用来干嘛的呢?简单的说也是用来构建我们的新的镜像的 只不过 这个构建的镜像是通过 文件描述来完成的
解读

FROM centos:7 :从那个基础镜像上来进行构建
MAINCONTAINER xiaobobo :表示的是构建者的信息
ADD 文件的名字 路径 :将本地当前工作目录下的某一个文件 复制到容器 并进行解压
COPY 文件的名字 路径 功能和上面一样只是不进行解压
ENV JAVA_HOME /usr/local/jdk1.8.0_20 ENV设置的是环境变量
ENV PATH J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH 引用环境变量设置给PATH
EXPOSE:这个命令仅仅是告诉开发者容器对外暴露的这个端口是什么 没有实际的意义
CMD [“命令”] 容器启动的时候执行的命令 如果有多个CMD那么后面的会把前面的覆盖掉
ENTRYPOINT [“命令”] 容器启动的时候执行的命令 如果有多个ENTRYPOINT的话那么 都会执行

docker run -v ./webapps:/usr/local/tomcat/webapps -d -p 8080:8080 tomcat:7777

说明:-v:表示的是文件的挂载命令
挂载的意思:将本地的路劲映射到服务器的某一个目录下 一般做数据的持久化

 FROM centos:7
  2 MAINTAINER xiaobobo
  3 COPY jdk-8u20-linux-x64.gz /usr/local/
  4 COPY apache-tomcat-8.5.41.tar.gz /usr/local/
  5 RUN tar -zxvf /usr/local/jdk-8u20-linux-x64.gz && \
  6     tar -zxvf /usr/local/apache-tomcat-8.5.41.tar.gz
  7 ENV JAVA_HOME /usr/local/jdk1.8.0_20
  8 ENV PATH  $JAVA_HOME/bin:$PATH
  9 EXPOSE 8080
 10 CMD ["/usr/local/apache-tomcat-8.5.41/bin/catalina.sh","run"]

项目的部署

FROM centos:7
  2 ADD apache-tomcat-8.5.41.tar.gz /usr/local/
  3 ADD jdk-8u20-linux-x64.gz /usr/local
  4 COPY Day1901_Deployee_01.war /usr/local/apache-tomcat-8.5.41/webapps/
  5 ENV JAVA_HOME /usr/local/jdk1.8.0_20
  6 ENV PATH $JAVA_HOME/bin:$PATH
  7 EXPOSE 8080
  8 CMD ["/usr/local/apache-tomcat-8.5.41/bin/catalina.sh","run"]

9:docker-compose的使用

9.1:docker搭建一个基于war部署的环境

9.2:搭建一个jar文件的运行环境

9.3:搭建一个基Docker基于Nginx代理Tomcat访问我们的MySQL的这样的一个环境(动静分离)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值