Docker--Image and Container
RUN groupadd -r mysql && useradd -r -g mysql mysql
ENV MYSQL_MAJOR 5.7
LABEL email="itlf2019@163.com"
LABEL name="itlf2019"
OLUME /var/lib/mysql
COPY docker-entrypoint.sh /usr/local/bin/
ADD application.yml /etc/itcrazy2016/
WORKDIR /usr/local
WORKDIR tomcat
RUN touch test.txt
WORKDIR /root
ADD app.yml test/
CMD ["mysqld"] 或CMD mysqld
ENTRYPOINT ["docker-entrypoint.sh"]
(1)创建一个Spring Boot项目
(2)写一个controller
(3)mvn clean package打成一个jar包 在target下找到"dockerfile-demo-0.0.1-SNAPSHOT.jar"
(4)在docker环境中新建一个目录"first-dockerfile"
(5)上传"dockerfile-demo-0.0.1-SNAPSHOT.jar"到该目录下,并且在此目录创建Dockerfile (6)创建Dockerfile文件,编写内容
FROM openjdk:8 MAINTAINElf2019"
COPY spring-boot-images-0.0.1-SNAPSHOT.jar dockerfile-image.jar
CMD ["java","-jar","dockerfile-image.jar"]
(7)基于Dockerfile构建镜像 docker build -t test-docker-imag 8080:8080 test-docker-image
(9)查看启动日志docker logs user01
(10)宿主机上访问curl localhost:8080/dockerfile hello docker 或外部 http://192.168.1.104:8080/dockerfile
(11)还可以再次启动一个 docker run -d --name user02 -p 8081:8080 test-docker-image
docker stop user02
docker run -d --name user02 -p 8081:8080 test-docker-image 报错Conflict. The container name user02
docker rm fb087642b497(该containerID) 或者 docker restart user02(镜像名)
(12)docker ps 查看运行的容器 或 docker ps -as 查看所有存在的容器
(13)进如容器 docker exec -it test-docker-image sh
docker ps -as 查看所有存在的容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
79cc86642500 test-docker-image "java -jar dockerfil…" 10 minutes ago Up 10 minutes 0.0.0.0:8080->8080/tcp user 32.8kB (virtual 504MB)
4d9c41573d9a test-docker-image "java -jar dockerfil…" 38 minutes ago Created test-docker-image2 0B (virtual 504MB)
beac0c4f46a9 test-docker-image "java -jar dockerfil…" 42 minutes ago Up 42 minutes 0.0.0.0:6666->8080/tcp test-docker-image 32.8kB (virtual 504MB)
0f95d1856b08 tomcat "catalina.sh run" 2 hours ago Exited (143) 13 minutes ago mytomcat 57.5kB (virtual 507MB)
729964e122ad mysql:5.5 "docker-entrypoint.s…" 3 hours ago Up 3 hours 0.0.0.0:3306->3306/tcp mysql02 127B (virtual 205MB)
2e06bb215086 mysql "docker-entrypoint.s…" 3 hours ago Exited (0) 3 hours ago mysql01 0B (virtual 456MB)
docker ps | grep test
[root@localhost ~]# docker ps | grep test
79cc86642500 test-docker-image "java -jar dockerfil…" 29 minutes ago Up 29 minutes 0.0.0.0:8080->8080/tcp user
beac0c4f46a9 test-docker-image "java -jar dockerfil…" About an hour ago Up About an hour 0.0.0.0:6666->8080/tcp test-docker-image
(1)在docker机器上登录 docker login
(2)输入用户名和密码
(3)docker push itcrazy2018/test-docker-image
[注意镜像名称要和docker id一致,不然push不成功]
(4)给image重命名,并删除掉原来的
docker tag test-docker-image itcrazy2018/test-docker-image
docker rmi -f test-docker-image
(5)再次推送,刷新hub.docker.com后台,发现成功
(6)别人下载,并且运行
docker pull itcrazy2018/test-docker-image
docker run -d --name user01 -p 6661:8080 itcrazy2018/test-docker-image
速度比较慢
Docker--Image and Container的更多相关文章
- docker的网络-Container network interface(CNI)与Container network model(CNM)
Overview 目前围绕着docker的网络,目前有两种比较主流的声音,docker主导的Container network model(CNM)和社区主导的Container network in ...
- Docker入门03——Container
1 启动容器 1.1 新建并启动 1.2 启动已终止容器 2 后台运行 3 终止 4 进入容器 5 导入和导出 5.1 导出 5.2 导入 6 删除 1 启动容器 1.1 新建并启动 docker r ...
- docker Cannot start container [8] System error: exec format error
docker Cannot start container [8] System error: exec format error 学习了:https://www.aliyun.com/jiaoch ...
- Docker 容器(container)
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker实现退出container后保持继续运行的解决办法
现象: 运行一个image,例如ubuntu14.04: 1 docker run -it --rm ubuntu:14.04 bash 退出时: 执行Ctrl+D或者执行exit 查看线程: 1 d ...
- Redis in Docker on Linux Container
记录:在Docker中运行一个Redis实例当我们在Windows系统中安装好Docker以后,在Hyper-V中会自动创建一个Linux虚拟机,如果这个虚拟机没有运行,说明当前运行的是Windows ...
- centos rancher 通过本机 docker images 新增container
示例目标: 将centos 本地的docker image ,通过rancher 进行 add container 相关步骤: step 1 : rancher 所在 centos 主机,有相应的 d ...
- Docker之删除container和image
删除所有停止的container: docker rm $(docker ps -a -q) 删除所有未标记的image docker rmi $(docker images | grep " ...
- Docker - 避免启动container后运行shell脚本执行完成后docker退出container
问题 最近在使用 Dockerfile 启动容器,发现使用Dockerfile调用容器里面的shell,当shell执行完成以后,docker会退出容器. 分析 Docker 在执行shell的时候, ...
- [Docker] Accessing a Container
If you want to get into container and look around, you can use: docker container exec to run against ...
随机推荐
- 2、fork函数与进程ID
1. fork函数 fork函数用于克隆一份当前的进程资源,调用fork函数之后,进程一分为二,并且两个进程的资源是一样的(只是资源内容完全一样,并不是同一份资源).fork函数的函数原型为:pid_ ...
- python基础之 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- linux 文件结构体和文件描述符号的学习
https://blog.csdn.net/cywosp/article/details/38965239
- loj10018数的划分
题目描述 将整数 n 分成 k 份,且每份不能为空,问有多少种不同的分法.当 n=7,k=3 时,下面三种分法被认为是相同的:1 1 5;1 5 1 ;5 1 1 输入格式 一行两个数 n ,k . ...
- python 字典的用法,访问、增删合并等
python字典可以存储任意类型的对象,字典的每个键:值 冒号(:)分割,每个对直接逗号(,)分割,整个字典包含在{}中,例如:d = {key1 : value1, key2 : value2, k ...
- (五)SpringBoot面试题
SpringBoot面试题 1.Spring Boot 的自动配置是如何实现的? 2.shiro和oauth还有cas他们之间的关系是什么?问下您公司权限是如何设计,还有就是这几个概念的区别. 2.1 ...
- Golang之如何(优雅的)比较两个未知结构的json
这是之前遇到的一道面试题,后来也确实在工作中实际遇到了.于是记录一下,如何(优雅的)比较两个未知结构的json. 假设,现在有两个简单的json文件. { "id":1, &quo ...
- ipython和jupyter安装
ipython pip install ipython pip install --upgrade pip jupyter pip install jupyter 查看token: jupyter n ...
- Jenkins安装部署项目
Jenkins安装部署项目 配置JDK git maven 部署到服务器 一.新建任务 二.配置jenkins 三.添加构建信息 四.应用.保存 五.踩坑填坑记录 5.1没有jar包的情况 5.2无法 ...
- 写了这么多年 JavaScript ,竟然还不知道这些技巧?
不少人有五年的 JavaScript 经验,但实际上可能只是一年的经验重复用了五次而已.完成同样的逻辑和功能,有人可以写出意大利面条一样的代码,也有人两三行简洁清晰的代码就搞定了.简洁的代码不但方便阅 ...