来源:第一本Docker书

基础命令

安装:

apt-get install docker

启动:

service  docker start

创建并运行第一个容器:

docker run -i -t ubuntu /bin/bash

-i -t :提供交互的shell

查看启动的容器、所有容器:

docker ps
docker ps -a

重命名:

ps -a 可以看到我们的容器有个随机的名字cranky_lalande

efd4d3fff333        ubuntu:latest                                                       "/bin/bash"            15 minutes ago      Up 7 seconds                                      cranky_lalande          
我们可以指定自己的名字:

docker run --name ubuntu_docker -i -t ubuntu /bin/bash

启动指定容器:

docker start ubuntu_docker

也可以根据id启动:

docker start efd4d3fff333

给后台容器添加会话(回车进入):

docker attach ubuntu_docker

守护式容器:

docker run --name daemon_docker -d ubuntu /bin/sh -c "while true;do echo hello docker;sleep 1;done;"

-d:后台运行

查看后台容器在干嘛:

docker logs ubuntu_docker

查看容器的进程:

docker top daemon_docker

停止守护式容器:

docker stop daemon_docker

自动重启容器:

 docker run --restart=always --name daemon_docker_restart -d ubuntu /bin/sh -c "while true;do echo hello docker;sleep 1;done;"

无论容器的退出代码是什么都会自动重启,还可以指定:--restart=on-failure:5,当退出代码非0时重启,最多5次。

删除容器:

docker rm daemon_docker_restart

删除所有(我的报错,不能删除多个):

docker rm 'docker ps -a -q'

-a:列出所有

-q:只显示id

使用镜像

列出镜像:

docker images

注册docker hub (lanqiexh/k***1)

用户仓库:jone/ubunntu

顶层仓库:ubuntu

拉取镜像:

docker  pull xx

查找镜像:

docker search kalilinux

构建镜像:

docker commit eaa1a6e0b320 lanqiexh/u_apache2

dockerfile

mkdir DockerLearn
vim Dockerfile #Version 0.0.1
From lanqiexh/u_apache2
MAINTAINER James Turn
RUN apt-get update
RUN apt-get install nginx -y
RUN echo 'Hi, I am in your container' > /usr/share/nginx/html/index.html
EXPOSE 80

最后要(空格和点)

docker build -t aaa/u_apache2 .

-t: 仓库/名称

还可以加标签:

aaa/u_apache2:v1

从新镜像启动容器:

docker run -d -p 80 --name web aaa/u_apache2 nginx -g "daemon off;"

-p: 指定80端口映射到宿主主机,

查看启动的容器:

docker ps -l

341fc8d3ca4c        aaa/u_apache2:latest   "nginx -g 'daemon of   6 minutes ago       Up 5 minutes        0.0.0.0:32769->80/tcp   web_u

宿主主机访问:http://0.0.0.0:32769/

可以访问到容器的服务

当然也可以指定宿主主机的端口:-p 8080:80

dockerfile指令

Docker学习笔记1的更多相关文章

  1. Docker学习笔记 — 配置国内免费registry mirror

    Docker学习笔记 — 配置国内免费registry mirror Docker学习笔记 — 配置国内免费registry mirror

  2. docker学习笔记1 -- 安装和配置

    技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...

  3. Docker学习笔记之一,搭建一个JAVA Tomcat运行环境

    Docker学习笔记之一,搭建一个JAVA Tomcat运行环境 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序 ...

  4. docker~学习笔记索引

    回到占占推荐博客索引 使用docker也有段时间了,写了不少文章与总结,下面把它整理个目录出来,方便大家去学习与检索! docker~学习笔记索引 docker~linux下的部署和基本命令(2017 ...

  5. Docker学习笔记 - Docker容器内部署redis

    Docker学习笔记(2-4)Docker应用实验-redist server 和client的安装使用 一.获取redis容器(含客户端和服务端) 二.创建服务端容器 1.在终端A中运行redis- ...

  6. docker学习笔记(一)—— ubuntu16.04下安装docker

    docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...

  7. Docker学习笔记总结

    Docker学习笔记 https://yeasy.gitbooks.io/docker_practice/content/   一 环境搭建 Ubuntu安装 .添加软件源的GPG密钥 curl -f ...

  8. docker学习笔记二:常用命令

    docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...

  9. docker学习笔记-1

    docker学习笔记一:安装 mac安装docker docker官方文档上有这么一段话: Because the Docker daemon uses Linux-specific kernel f ...

  10. Docker:学习笔记(1)——基础概念

    Docker:学习笔记(1)——基础概念 Docker是什么 软件开发后,我们需要在测试电脑.客户电脑.服务器安装运行,用户计算机的环境各不相同,所以需要进行各自的环境配置,耗时耗力.为了解决这个问题 ...

随机推荐

  1. Linux系统中/etc/rc.local和/etc/rc.d/rc.local的区别

    /etc/rc.d/rc.local 用于添加开机启动命令 /etc/rc.local是/etc/rc.d/rc.local的软连接

  2. 流畅的python--python数据模型

    python最好的品质之一就是一致性.初步接触python可能会len(collection)而不是collection.len()觉得不适应,这是通常所说的“python风格”(Pythonic)的 ...

  3. hadoop 伪分布式搭建

    下载hadoop1.0.4版本,和jdk1.6版本或更高版本:1. 安装JDK,安装目录大家可以自定义,下面是我的安装目录: /usr/jdk1.6.0_22 配置环境变量: [root@hadoop ...

  4. Word 测试下发布博客

    目录 语法.    3 NULL,TRUE,FALSE    3 大小端存储    4 类型转换    4 转义字符    5 运算符的优先级    5 表达式(a=b=c)    7 *pa++=* ...

  5. 分享两个好用的nosql GUI工具

    redis: 真是千呼万唤始出来,终于有了redis gui 谢谢作者,但中文乱码问题貌似还没有解决呀! https://github.com/caoxinyu/RedisClient mongoDB ...

  6. Jenkins权限分配

    做完Jenkins安装.项目自动化打包部署后,当然需要对小组成员进行项目权限的分配 1.安装插件:Role-based Authorization Strategy(安装过程就展示了): 2. 插件装 ...

  7. Web API中给领域模型添加媒体类型支持

    一.媒体类型 媒体类型(也称为MIME类型)标识一段数据的格式.在HTTP中,媒体类型描述了消息体的格式.媒体类型由两个字符串组成,一个类型和一个子类型.例如:text / html: image/ ...

  8. spring-data-redis时效设置

    本人转自http://hbxflihua.iteye.com/blog/2320584#bc2396403 spring目前在@Cacheable和@CacheEvict等注解上不支持缓存时效设置,只 ...

  9. Shell编程(六)awk工具

    1. {print} coins.txt gold USA American Eagle gold Austria Franz Josef Korona silver USA ingot gold S ...

  10. 059、安装配置flannel(2019-03-28 周四)

    参考https://www.cnblogs.com/CloudMan6/p/7424858.html   build flannel   flannel 没哟现成的执行文件可用,必须自己build,最 ...