1 通过dockerfile建立一个简单的HELLO.C,然后做一个简单的docker image
,这个是base image,共享宿主机的base image
建立目录,比如helloworld目录下,建立Dockerfile文件,写入
FROM scratch
ADD hello /
CMD ["/hello"] //CMD运行后是会马上退出的
>docker build -t liaoyurong/hello-world .
运行docker run liaoyurong/hello-world 输出结果
2 IMAGE和容器container的关系,大概等于类和实例的关系
3 docer container ls -a //列出当前运行和已退出的container
4 docker run -it centos //直接会进centosde container,
exit //退出
5 docker container rm containerid(可以不写全)
6 docker ps -a
docker ls -aq //列出所有containerid
docker rm $(docker container ls -aq) //全部清理
7
比如在container中做了修改后,EXIT退出DOCKER,
docer container ls -a
找出最新的names(是个随机字母)
docker commit names xxxx/xxxx //容器中再修改后再提交成IMAGE
8 通过dockerfile往CENTOS中安装VIM
FROM centos
RUN yum-install vim
然后docker build -t liao/xxxx .
9 dockerfile语法
FROM scratch // 制作baseimage
FROM centos
LABEL version="1.0" //定义相关元数据
RUN yum update &&yum install -y .....
WORKDIR /root 设定当前工作目录
ADD hello / //复制到根目录
ADD test.tar.gz / 添加到根目录并解压
WORKDIR /root
ADD hello test/ hello的位置在#/root/test/hello
ENV MYSQL_VER 5.6 //设定的常量
10 RUN:执行命令并创建新的IMAGE LAYER
CMD:设置容易启动后默认执行的命令和参数,如果
docker run指定了其他命令,则CMD命令被忽略,
如果定义了多个CMD,则最后一个才给执行
ENTRYPOINT:设置容器启动时运行的命令
11 SHELL格式
RUN apt-get install -y vim
CMD echo "hello"
ENTRYPOINT echo "hello"
//shell格式执行的话,能识别比如$name=abc这样的参数替换
EXEC格式
RUN ["apt-get","install",.....] //通过逗号分隔
ENV name docker
ENTRYPOINT["/bin/bash","-c","echo hello $name"]
12 ENTRYPOINT //一般让容易以应用程序用服务形式执行,一定会执行;
13 docker push xxx/xxxx ; //发布
docker pull xxx/xxxx //推送
分享dockerfile:
可以关联github上的库,dockerhub服务器从GITHUB上BUILD,等于DOCKERHUB帮你BUILD了,
其他人更信服
14 docker search java //搜索
15 docker run -d -p 91:80 nginx
就是启动一个NGINX容器,-d 后台运行 -p 宿主机端口:容器端口
则访问http://docker宿主IP:91 就等于访问NGINX的80
docker小结1
原创
©著作权归作者所有:来自51CTO博客作者mb5c80f4c73b73a的原创作品,请联系作者获取转载授权,否则将追究法律责任

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Docker小结
docker学习小结
docker dockerfile cg -
【Docker】笔记小结
目录一、快速入门1. 安装2.配置镜像加速二、常用命令0. 预备1.镜像命令1.1 查看所有本地主e -r[root
docker linux centos mysql -
oracle小结1
1 显示操作时间 set timing on;2 nvl(comm,0),如果COMM为空,则显示0,否则用C
oracle file sql insert system -
flex 小结1
摘录最近学FLEX的一些读书笔记小结
xml ide 用户名 表单 控件 -
vi小结1
我使用xshell,vi里面中文乱码
保存文件 html hive vim 打开文件 -
QT小结1
Qt小结常用的小知识
应用程序 c++ 资源文件 -
statspack小结1
1 建立大的perfstat表空间(500MB吧)2 执行oracle\RDBMS\ADMIN下的@spcreate.sql
SQL Oracle sql 表空间 sql文件