docker 添加端口及获取dockerfile的方法

从docker image中获取 dockerfile

docker history --format {{.CreatedBy}} --no-trunc=true $DockerImage
|sed “s//bin/sh\ -c\ #(nop)\ //g”|sed “s//bin/sh\ -c/RUN/g” |
tac

注:该docker file 不对目录,端口进行映射 同时不执行docker开机启动的脚本及 server 服务

docker 多端口映射

Docker 多端口

docker run -it -d --name container-name -p p1:p1 -p p2:p2 new-image-name -ip xxxxx —restart=always

方式一:

运行时添加端口

/var/lib/docker/containers/{container_id}/hostconfig.json

方式二:
提交一个运行中的容器为镜像:

docker commit containerid now/live

运行镜像并添加端口:

docker run -d -p 8000:80 now/live /bin/bash

获得容器IP:

docker inspect container_name | grep IPAddressiptable转发端口iptables -t
nat -A DOCKER -p tcp --dport 8001 -j DNAT --to-destination
172.17.0.19:8000

注:mac 有可能进入不到screen 里面

向docker传入文件

sudo docker save -o /home/ubuntu_14804.tar 93123213127ccc

到此这篇关于docker 添加端口及获取dockerfile的方法的文章就介绍到这了,更多相关docker 添加端口及获取dockerfile内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker动态添加端口不需要重新建立镜像的方法

    Docker容器在运行期间有时可能会需要修改或者添加暴露的端口,但是有时候运行的容器又不想再另外建立一个新的镜像.这时可以找到docker容器的存放地方,然后直接修改配置文件. 我们的容器都是保存在/var/lib/docker/containers下面. 我的容器是在/var/lib/docker/containers/797f3d0cb82aec7d1c355c7461b5bc5a050c1c0cbbe5d813ede0edad061e6632 每个容器ID对应一个hash_id,可以看到n

  • docker容器启动后添加端口映射

    概要 网上有许多人在查找关于容器启动后能否进行端口映射的问题.我曾经也问过度娘,很遗憾我没找到.本文就这个问题给出一个解决方法,旨在抛砖引玉.本文的思路是使用iptables的端口转发,这也是docker端口映射内部的实现机制,只不过我是显示地写出来罢了,为的就是让查找这个问题的人对docker的端口映射有一个直观的了解. 结论:容器启动后是可以添加端口映射的,但不建议手工添加,最好使用docker提供的功能. 步骤 创建两个容器并进行了端口映射,结果如图所示: 假如,我start一个容器,其内

  • docker 添加端口及获取dockerfile的方法

    从docker image中获取 dockerfile docker history --format {{.CreatedBy}} --no-trunc=true $DockerImage |sed "s//bin/sh\ -c\ #(nop)\ //g"|sed "s//bin/sh\ -c/RUN/g" | tac 注:该docker file 不对目录,端口进行映射 同时不执行docker开机启动的脚本及 server 服务 docker 多端口映射 Doc

  • docker已启动容器修改添加端口映射的两种方法

    目录 简述 一.先提交,在配置 1.先将容器提交为镜像 2.创建新的容器并运行 二. 修改配置文件 1.关闭docker服务 2.修改hostconfig.json 3.修改config.v2.json 4.重启 docker服务 5.查看配置项已经修改成功 补充:docker容器怎么开端口 总结 简述 正常情况下,在你创建容器时可以添加多个端口映射,写法如下 每个端口映射都加一个-p docker run -itd --name centos -p 4000:8081 -p 3306:3306

  • jquery动态添加文本并获取值的方法

    实例如下: $(function() { var i = 1; $('#addText').click(function() { if (i < 9) { $('#main').append('<div><input type="text" name="text" + i + ""/> <a href="#" mce_href="#" class="del-te

  • windows 系统防火墙 添加端口号方法

    目前在大部分公司内使用的台式机和部分服务器都采用了Windows操作系统,而我么都知道相当一部分病毒.恶意程序.黑客都是利用扫描端口号,利用开放的端口进行入侵,此时大型企业都会将服务器的系统防火墙打开来关闭非常用端口.有些程序安装后可能会自动添加开放需要用到的端口,而有些软件则没有这么智能:又或者我们需要改变某个程序的端口号,改变后如果没有在系统防火墙中添加的话,那么连接就会被防火墙阻止掉,导致连接失败. 添加方法: 1.在<控制面板>中找到<Windows防火墙>点击打开. 2.

  • 在CentOS 7 上为docker配置端口转发以兼容firewall的解决方法

    在CentOS 7上当我们以类似下列命令将主机端口与容器端口映射时可能遇到无法访问容器服务的问题 docker run --name web_a -p 192.168.1.250:803:80 -d web_a:beta1.0.0 . 由于docker在执行此命令时,是向iptables注入了一条规则将主机803映射到容器80端口,但是CentOS 7中以firewalld服务替代了iptables.因此,上述命令的端口映射不会生效. 解决方法:首先观察一下主机上的网卡信息,确认增加了一个doc

  • docker连接spring boot和mysql容器方法介绍

    在之前使用docker部署运行了Spring Boot的小例子,但是没有使用数据库.在这一篇中,介绍docker如何启动mysql容器,以及如何将Spring Boot容器与mysql容器连接起来运行. docker基本命令 首先熟悉一下在操作过程中常用的docker基本命令: docker images:列出所有docker镜像 docker ps:列出所有运行中的容器,-a参数可以列出所有容器,包括停止的 docker stop container_id:停止容器 docker start

  • Docker使用Swarm组建集群的方法

    Swarm 在 Docker 1.12 版本之前属于一个独立的项目,在 Docker 1.12 版本发布之后,该项目合并到了 Docker 中,成为 Docker 的一个子命令.目前,Swarm 是 Docker 社区提供的唯一一个原生支持 Docker 集群管理的工具.它可以把多个 Docker 主机组成的系统转换为单一的虚拟 Docker 主机,使得容器可以组成跨主机的子网网络. Docker 使用 Swarm 可以很方便的在多个主机上创建容器集群,并且容器之间可以跨主机网络通信. Swar

  • spring boot项目生成docker镜像并完成容器部署的方法步骤

    一.问题产生    把spring boot项目生成的jar打成docker镜像并生成docker容器完成部署是比较简单方便的部署方式,而且部署过程很少会出错. 二.部署步骤 1.利用maven或者gradle完成打包工作,打成jar包的形式. 2.在项目中的任意位置创建Dockerfile文件,本人的文件如下: FROM java:8 VOLUME /tmp ADD front-1.0-SNAPSHOT.jar front.jar RUN bash -c 'touch /front.jar'

随机推荐