docker的例子
定制镜像
做个测试服务器,testServer代码如下
package main import (
"net/http"
) func main() {
http.Handle("/", http.FileServer(http.Dir("./")))
http.ListenAndServe(":12345", nil)
}
我们的目录结构如下
$ tree
.
├── Dockerfile
└── files_to_add
└── testServer
编辑Dockerfile
From debian
RUN rm /etc/apt/sources.list
RUN echo "deb http://ftp.cn.debian.org/debian jessie main contrib non-free" >> /etc/apt/sources.list
RUN echo "deb http://ftp.cn.debian.org/debian jessie-updates main contrib non-free" >> /etc/apt/sources.list
RUN echo "deb http://ftp.cn.debian.org/debian-security/ jessie/updates main contrib non-free" >> /etc/apt/sources.list
RUN apt-get -qq update;apt-get upgrade -y;apt-get install build-essential -y; EXPOSE
ADD ./files_to_add/ /myServer
RUN chmod +x /myServer/testServer
CMD "/myServer/testServer"
根据Dockerfile建立docker镜像,由于建立完毕以后会自动运行,这里强行删除新起来的container
docker build --force-rm --tag="rico/my_server:v1" ./mydocker/
运行
docker run --name="rico_server" --rm -p : rico/my_server:v1 &
或者
docker run -d --name="rico_server" -d -p : rico/my_server:v1
打开浏览器
http://127.0.0.1:11111
看到效果
附加几个技巧
docker删除无名镜像
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
docker images|grep none|awk '{print $3 }'|xargs docker rmi
docker删除已停止的容器
docker rm $(docker ps -a -q)
docker退出时删除容器
docker run --rm
docker run是根据镜像启动一个新容器
docker start是根据已有的容器id启动容器
docker的例子的更多相关文章
- Docker NGINX 例子
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker Ubuntu 例子
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker PHP 例子
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker Python 例子
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker Java 例子
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker练习例子:基于 VNCServer + noVNC 构建 Docker 桌面系统
0. 安装docker 这一步略,网上有好多教程,一般出现装不上的原因,也就是网速问题了,这个我也很难帮你. 1. 下载指定的镜像images docker pull dorowu/ubuntu-de ...
- 一个不错的nomad raw_exec && docker 运行例子(集成访问网关)
github 上有一个关于nomad up && runing 不错的项目,包含了一个tomcat 应用的部署,以及基于容器运行的网关服务 项目参考地址 https://github. ...
- docker好文收藏
深入浅出Docker(一):Docker核心技术预览 2. 核心技术预览 Docker核心是一个操作系统级虚拟化方法, 理解起来可能并不像VM那样直观.我们从虚拟化方法的四个方面:隔离性.可配额/可度 ...
- 使用docker发布spring cloud应用
本文涉及到的项目: cloud-simple-docker:一个简单的spring boot应用 Docker是一种虚拟机技术,准确的说是在linux虚拟机技术LXC基础上又封装了一层,可以看成是基于 ...
随机推荐
- Java-->多线程复制(文件指针)
--> 这里用到两种方法...其实也不算两种,就一点点不一样而已... ---> Test 测试类 package com.dragon.java.multithreadcopy; imp ...
- iPhone 上拨号键盘的发音规律
上个学期在信号处理课上选做的题目和这个问题正好相关. 如焕杰同学所说,iPhone拨号音是使用双音多频信号(DTMF).双音多频信号是贝尔实验室发明的,通常用于发送被叫号码,它取代了早起的脉冲拨号方法 ...
- viewpager中对fragment的操作
XXAdatper xxAdapter = (XXAdatper)viewpager.getAdapter(); XXFragment xxFragment= (XXFragment )adapte ...
- leetcode 132. Palindrome Partitioning II ----- java
Given a string s, partition s such that every substring of the partition is a palindrome. Return the ...
- Python文件格式化写入
[root@localhost test]# cat 1.py fd = open('format.txt','w') head = "%10s%10s%10s\n"%('id', ...
- hdu1078 记忆化搜索(DP+DFS)
题意:一张n*n的格子表格,每个格子里有个数,每次能够水平或竖直走k个格子,允许上下左右走,每次走的格子上的数必须比上一个走的格子的数大,问最大的路径和. 我一开始的思路是,或许是普通的最大路径和,只 ...
- 关于for,while与do while
Q:输入一个整数i,输出i+(i+1)+...+19+20的结果 S:法1:for #include<stdio.h> #include<math.h> #include< ...
- Subversion服务器搭建
如何快速建立Subversion服务器,并且在项目中使用起来,这是大家最关心的问题,与CVS相比,Subversion有更多的选择,也更加的容易,几个命令就可以建立一套服务器环境,可以使用起来,这里配 ...
- 多网卡 指定网卡到指定IP
route add -net 1.2.3.0/24 gw 网关 route add -host 目标IP dev eth1route add -host 目标IP gw 网关
- ExpressRoute
Extending Your Network to Microsoft Azure Using ExpressRoute https://channel9.msdn.com/events/TechEd ...