先来一波docker的指令:
docker inspect 容器id 查询容器信息
docker stop 容器id 停止容器id
docker rm 容器id 删除容器id
systemctl restart docker 重启容器
阿里镜像加速
详细参考: https://cr.console.aliyun.com/cn-hangzhou/mirrors
镜像相关命令
1、搜索镜像 # docker search java
可使用 docker search命令搜索存放在 Docker Hub(这是docker官方提供的存放所有docker镜像软件的地方,类似maven的中央仓库)中的镜像。执行该命令后, Docker就会在Docker Hub中搜索含有 java这个关键词的镜像仓库。
Docker Hub 官网https://hub.docker.com/search?q=java&type=image
相当于做了ES分词查询,获取到的结果很全面~
2、下载镜像docker pull java:8
使用命令docker pull命令即可从 Docker Registry上下载镜像,执行该命令后,Docker会从 Docker Hub中的 java仓库下载最新版本的 Java镜像。如果要下载指定版本则在java后面加冒号指定版本
3、列出镜像使用 docker images命令即可列出已下载的镜像
下载完之后:
4、删除镜像 使用 docker rmi java 命令即可删除指定镜像
docker rmi d23bdf5b1b1b(先用 docker images 看看编标)
容器相关命令(Nginx为例)
启动容器 docker run -d -p 81:80 nginx
本地没有就 仓库下载 然后自动安装 (默认前台启动 加-d 是后台启动) run才可以有容器 pull只会下载镜像哦 直接run就好了啊 反正下载 安装 一条龙搞定
此时就可以了啊:
外部端口号81 容器端口号80
查看当前容器:
在本例中,为 docker run添加了两个参数,含义如下:
-d 后台运行
-p 宿主机端口:容器端口 #开放容器端口到宿主机端口
访问 http://Docker宿主机 IP:81/,将会看到nginx的主界面如下:
需要注意的是,使用 docker run命令创建容器时,会先检查本地是否存在指定镜像。如果本地不存在该名称的镜像, Docker就会自动从 Docker Hub下载镜像并启动一个 Docker容器。
2. 列出容器用 docker ps命令即可列出运行中的容器
访问80端口看下:
这么全乎,简直一台小虚拟机呀啊哈哈 轻量级的
玩一下这个内部ip 端口: 容器的ip 和端口哦 (外部不可以访问)
外部的docker不可以访问呢,因为:他的虚拟机是通过物理机虚拟出来的docker虚拟机,而Nginx又是基于docker搞出来的一个容器,网段不会在同一个。物理机肯定是访问不到的啦
容器去运行镜像文件
3. 查看容器的信息 docker inspect 5d2d586de5d3
构建自己的docker镜像
1、将jar包上传linux服务器/homel/dockerapp目录(自己创建好),在jar包所在目录创建名为Dockerfile的文件
2、在Dockerfile中添加以下内容 在目录下面创建 Dockerfile:
###指定java8环境镜像 FROM java:8 ###复制文件到容器app-springboot ADD docker-springboot.jar /app-springboot.jar ###声明启动端口号 EXPOSE 8080 ###配置容器启动后执行的命令 ENTRYPOINT ["java","-jar","/app-springboot.jar"] |
Docker部署SpringBoot项目:
jar类型的项目 做成image 然后放到容器里面运行
打成jar包:
右键项目--show in -- system explorer 直接定位到项目的目录中了
然后 --- Terminal 进行指令:
mvn clean package 然后 mvn insall
然后右键target--show in
此时需要玩儿jar包,做成镜像文件~~
其实都是一些应用程序而已,nginx mysql 等等包括jar包都是应用程序 放到容器可以运行哦~~
使用docker build命令构建镜像
docker build -t docker-springboot-0.0.1 . # docker build -t 镜像文件名称 相对路径
# 格式: docker build -t 镜像名称:标签 Dockerfile的相对位置
上图 查看镜像时候有了哦
启动
docker run -p 8080:8080 docker-springboot
访问:
最好后台启动哈!
docker run -d -p 8080:8080 docker-springboot
重启systemctl restart docker
关闭防火墙 systemctl stop firewalld