您的位置:首页 > 运维架构 > Docker

docker的例子

2015-12-08 20:27 796 查看
debian:

curl -sSL https://get.docker.com/ | sh


把当前用户直接添加普通用户组

sudo usermod -aG docker `whoami`


删除

sudo passwd -d `whoami` docker


mac:

下载dockertoolbox,安装,需要运行dockertoolbox自带的terminal


定制镜像
做个测试服务器,testServer代码如下

package main

import (
"net/http"
)

func main() {
http.Handle("/", http.FileServer(http.Dir("./")))
http.ListenAndServe(":12345", nil)
}


编辑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 12345
RUN apt-get -qqy install telnet axel;
RUN mkdir /myServer
RUN axel http://10.0.2.2:8888/testServer -o /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 11111:12345 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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: