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学习总结20篇汇总
关于docker的学习笔记,以及linux等知识 关于docker的学习笔记,以及linux等知识 关于docker的学习笔记,以及linux等知识 关于docker的学习笔记,以及linux等知识
docker 容器学习总结 Docker 是一个开发、发布和运行应用程序的开放型平台,能够将应用程序与基础架构分离,以便达到快速交付的目的。下面是 Docker 容器学习总结中的重要知识点: 一、虚拟化技术 虚拟化是一种...
1、host模式 docker run --net=host就可以指定了这种网络模式。这种模式,容器直接复用了宿主机的ip,并且使用了宿主机的所有网卡,也就是在容器里ifconfig查看到的内容和宿主机查看的一模一样。 比如: docker run...
docker学习资料 白皮书
Docker手册(Docker Handbook)是一份详尽的文档,它覆盖了Docker容器化技术...从上面的内容来看,Docker手册不仅包含了Docker技术的全面介绍,还提供了实际案例分析和操作指导,是一份极具参考价值的Docker学习资源。
"docker入门" Docker是容器技术,解决了容器环境迁移的问题。...小结 Docker是一个强大的容器技术,解决了容器环境迁移的问题。它可以将应用程序和依赖项封装在一个容器中,使得应用程序可以在不同的环境中运行。
文档包含个人在学习docker和k8s的过程中对docker的在线、离线安装,docker的常用命令,k8s的离线安装,k8s-dashboard的安装等方面的总结
1.安装DockerToolbox,同时会附带安装Docker Quickstart Terminal、Kitematic (Alpha)、Oracle VM VirtualBox docker terminal界面如下,可进行常见docker命令操作。 Kitematic界面如下,用于管理容器下载。 ...
Docker容器技术是学习虚拟化的必经之路,对此有一个更深刻的认知,思维导图是离不开的一种手段
自己手写总结的关于Docker入门的理解知识和Windows10安装配置以及一些部分的系统学习和简单的小实践,适合入门。 总共包含四十页。
这是我研究Dicker一周以来学习的Docker资料的总结,里面包括:namespace,cgroup等对Docker核心原理的认识和理解,还有一些关于Docke自己做的实验
1.由浅入深学习docker技术,简单易学,1天学会docker常用知识点 2.包含常用操作,例如容器创建,查看容器信息,容器目录挂载等等操作 3.根据视频自己总结,截图是视频中的图, 截图引用来源:深入解析docker容器...
docker学习的一些相关资料,入门的一些简单操作,部分老师的课件总结。内有docker视频下载链接。
Docker 基础教程是我在学习docker过程中所总结的文档,适合初级学习的小白,其中演示记录了多个搭建简单的基础服务,包含了docker-compose的操作等,可以快捷的搭建服务。
容器云docker总结
DockerContainer容器Docker并不是全能的,设计之初也不是KVM之类虚拟化手段的替代品,简单总结几点: Docker是基于Linux 64bit的,无法在32bit的linux/Windows/unix环境下使用 LXC是基于cgroup等linux kernel...
该文档总结了Docker相关的基础知识,和大家一起学习Docker,做到对Docker有一个基础的理解。