2019-03-13 初识docker

2019-03-13  本文已影响0人  江江江123

docker

更为方便的运维方式,创建虚拟机,下载,启动服务,创建集群。极大的简化了运维流程

docker-machine 用于操作虚拟机
docker-machine ssh 用于连接虚拟机,与vmvare的区别,machine生成的虚拟机已经默认设置好了很多

docker-compose 用于微服务批量操作
由于docker-compose 只能操作本机,所以有了k8s集群批量部署

docker network 操作容器网段

重新生成证书

docker-machine regenerate-certs default

重启

docker-machine restart default 

解决

docker怎么操作其他虚拟机

docker-machine ssh nodename  docker images //查看nodename下的镜像

docker 用于虚拟机内部的命令
docker pull xx拉取镜像
docker images 查看已有镜像
docker run 运行
docker ps -a 查看全部
docker stop name or id 停止
docker rm name or id 移除

集群

设置管理节点

docker-machine ssh manager1 docker swarm init --listen-addr 192.168.99.102:2377 --advertise-addr 192.168.99.102  //设置集群 ip为manager1的ip

添加子节点

docker-machine ssh worker1 docker swarm join --token SWMTKN-1-09358eighvl76k7vthzx8o7o4kqyhsiuxwglg1ee0icmcmogq5-3sm4
gplcvwxe4121u8kocta2e 192.168.99.102:2377
//docker swarm开始 。。都是创建manger后生成的

踩坑

docker-machine ssh name 连接虚拟机后,进入操作页面。由于docker创建虚拟机回自动添加需要东西,所以在根目录下看见一些奇怪的文件不要乱删。。可能是你本机中的文件。

docker 默认创建的虚拟机ip是100递增。。如果删掉了中间的虚拟机,电脑重启后会重新分配ip
这时候需要重新生成证书。

启动springboot项目

1.下载java环境

docker pull openjdk

2.创建文件夹

mkdir -p  ~/app
cd ~/app

3.添加打包文件
3.1添加需要启动的jar包

3.2vi Dockerfile

FROM openjdk:latest #打包的java环境
ADD RegionalMedical-web-1.0.0.jar app.jar #jar包
EXPOSE 8080 #端口号
ENTRYPOINT ["java","-jar","/app.jar"] 

4.打包

docker build -t 镜像名称 .
#注意后面有个点

5.查看启动

docker images
docker run -d -p 8080:8080  镜像名称

6 :访问192.168.99.100:8080 成功

7:坑
7.1由于docker是搭建再win10系统上,本地文件jar没有问题,但是其他用户无法访问
解决方法:

管理员权限运行cmd
查看ip
在win10上配置转发

ipconfig
netsh  interface portproxy add v4tov4 listenaddress=ip地址 listenport=8080 connectaddress=192.168.99.100 connectport=80

7.2 不知道是因为异常退出还是调整了docker容器大小,造成images 下镜像全部丢失。。绝望

上一篇 下一篇

猜你喜欢

热点阅读