Docker入门使用
先来一波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
Docker入门使用的更多相关文章
- 第三章 Docker 入门
第三章 docker 入门 3.1 确保docker已经就绪 首先查看docker程序是否存在,功能是否正常 [#3#cloudsoar@cloudsoar-virtual-machine ~]$su ...
- Docker入门教程(九)10个镜像相关的API
Docker入门教程(九)10个镜像相关的API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第九篇,重点介绍了镜像相关的Docker Remote ...
- Docker入门教程(八)Docker Remote API
Docker入门教程(八)Docker Remote API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第八篇,重点介绍了Docker Remote ...
- Docker入门教程(七)Docker API
Docker入门教程(七)Docker API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第七篇,重点介绍了Docker Registry API和 ...
- Docker入门教程(六)另外的15个Docker命令
Docker入门教程(六)另外的15个Docker命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第六篇,继续介绍Docker命令.之前的第二篇文章 ...
- Docker入门教程(五)Docker安全
Docker入门教程(五)Docker安全 [编者的话]DockOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第五篇,介绍了Docker的安全问题,依然是老话重谈,入门者可以通 ...
- Docker入门教程(四)Docker Registry
Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...
- Docker入门教程(三)Dockerfile
Docker入门教程(三)Dockerfile [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第三篇,介绍了Dockerfile的语法,DockerOn ...
- Docker入门教程(二)命令
Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker ...
- Docker入门教程(一)介绍
http://dockone.io/article/101 Docker入门教程(一)介绍 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第一篇,介绍了 ...
随机推荐
- Python 基础之列表去重的几种玩法
列表去重 1.方法1 借助一个临时列表 ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] for id in ids: if id not in news_ids ...
- 一个最简单的JStorm例子
最简单的JStorm例子分为以下几个步骤: 1.生成Topology Map conf = new HashMp(); //topology所有自定义的配置均放入这个Map TopologyBuild ...
- 【BZOJ4557】[JLoi2016]侦察守卫 树形DP
[BZOJ4557][JLoi2016]侦察守卫 Description 小R和B神正在玩一款游戏.这款游戏的地图由N个点和N-1条无向边组成,每条无向边连接两个点,且地图是连通的.换句话说,游戏的地 ...
- ubuntu 下 Nginx相关设置
ubuntu安装Nginx之后的文件结构大致为: 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下 启动程序文件在/usr/ ...
- 160628、利用Oracle rownum让表排序字段值连续
利用Oracle rownum让表排序字段值连续 1.需求说明 表(eval_index)中有字段如下: 表字段 描述 说明 ID 主键 GROUP_ID 分组编号 SORT_NUM 排序序号 按照分 ...
- 《JAVA多线程编程核心技术》 笔记:第一章
一.基本概念理解:1.1.进程和线程的理解1.2.同步和异步的理解(阻塞模式和非阻塞模式)1.3 线程间共享变量和不共享变量二.多线程的实现方式和构造方法:2.1 实现方式:2个2.2 构造方法:8个 ...
- Eclipse MyBatis Generator插件安装
目录 Eclipse MyBatis Generator插件安装 Eclipse MyBatis Generator插件安装 1.进入Eclipse Marketplace [Help] -> ...
- delphi ----寻找控件,以字符串类型的名称控件
vari :Integer;beginfor i := 1 to 10 do(FindComponent('Edit'+inttostr(i)) as TEdit).Text := inttostr( ...
- “CMake”这个名字是“cross platform make”
cmake_百度百科 https://baike.baidu.com/item/cmake/7138032?fr=aladdin CMake 可以编译源代码.制作程序库.产生适配器(wrapper). ...
- Qt 如何自动安装常用依赖?
使用 *.prf 文件自动安装依赖 在 Qt\Qt5.9.5\5.9.5\msvc2015\mkspecs\features 路径中添加 auto_install.prf 文件 然后在程序配置文件(* ...