helloworld:

wget -qo- https://get.docker.com/ | sh

sudo docker run hello-world

sudo usermod -aG docker johnnytu

docker run hello-world

Install Docker

  1. Follow the instructions at https://docs.docker.com/installation/ to install the latest Docker maintained Docker package on your preferred operating system
  2. Run the hello-world container to test your installation: sudo docker run hello-world
  3. Add your user account to the docker group: sudo user mod -aG docker <user>
  4. Logout of your terminal and log back in for the changes to take effect
  5. Verify that you can run the hello-world container without using sudo: docker run hello-world

sudo docker version

Docker Machine

Tools that provisions Docker hosts and installs the Docker Engine on them

Docker Swarm

Tools that clusters many Engines and schedules containers

Docker Compose

Tools to create and manage multi-container applications

Create a Docker Hub Account

  1. Go to https://hub.docker.com/account/signup/ and signup for an account if you do not already have one
  2. Find your confirmation email and activate your account
  3. Browse some of the repositories
  4. Search for some images of your favorite dev tools, languages, servers etc… examples: Java, Perl, Maven, Tomcat, NGINX, Apache

Display local image

sudo docker images

Creating a Container

sudo docker run [options] [image] [command] [args]

image is specified with repository:tag

Examples

docker run ubuntu:14.04 echo “hello world”

docker run ubuntu ps ax

docker run -i -t ubuntu:14.04 /bin/bash

The -i flag tells docker to connect to STDIN on the container

The -t flag specifies to get a pseudo-terminal

Run a Container and get Terminal Access

  1. Create a container using the ubuntu 14.04 image and connect to STDIN and a terminal: sudo docker run -i -t ubuntu:14.04 /bin/bash
  2. In your container, create a new user using your first and last name as the username: adduser <username>
  3. Add the user to the sudo group: adduser <username> sudo
  4. Exit the container: exit
  5. Notice how the container shut down
  6. Once again run: sudo docker run -i -t ubuntu:14.04 /bin/bash
  7. Try and find your user
  8. Notice that it does not exist

Ctrl + P + Q

Container ID

Containers can be specified using their ID or name

Long ID and short ID

Short ID and name can be obtained using docker ps command to list containers

Long ID obtained by inspecting a container

Running in Detached Mode

Also known as running in the background or as a daemon

Use -d flag

To observe output use docker logs <container id>

docker run -d centos: ping 127.0.0.1 -c 

List Your Containers

  1. docker run -d centos:7 ping 127.0.0.1 -c 50
  2. List your containers by running: docker ps
  3. Notice the cents container running
  4. run: docker ps -a
  5. Notice all the containers created from the previous exercises

A More Practical Container

Run a web application inside a container

The -P flag to map container ports to host ports

Create a container using the tomcat image, run in detached mode and map the tomcat ports to the host port: docker run -d -P tomcat:7

Run a Web Application Container

  1. docker run -d -P tomcat:7
  2. Check your image details by running docker ps
  3. Notice the port mapping. The container’s port 8080 is mapped to a random port on your host machine: 0.0.0.0:49155->8080/tcp
  4. Go to <your linux server url>:<port number> and verify that you can see the Tomcat page

Self-Paced Training (1) - Introduction to Docker的更多相关文章

  1. Training - An Introduction to Enterprise Integration

    What is EI? Enterprise Integration (EI) is a business computing term for the plans, methods, and too ...

  2. Docker Resources

    Menu Main Resources Books Websites Documents Archives Community Blogs Personal Blogs Videos Related ...

  3. Docker基本使用(二)

    Docker 客户端 我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项. 可以通过命令 docker command --help 更深入的了解指定的 Docker 命 ...

  4. Docker记录-Docker部署记录

    1.Docker介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后 ...

  5. Docker学习笔记1 -- 刚入手docker时的几个命令

    目录 Hello World 后台运行 停止运行 容器 载入镜像 指定端口映射 查看日志 查看应用的进程 登入镜像内部 移除容器 镜像 查看本地镜像 拉取镜像 查找镜像 更新镜像 构建镜像 设置镜像标 ...

  6. Docker入门 - 004 Docker 容器使用

    Docker 客户端 docker 客户端非常简单 ,我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项. docker 可以通过命令 docker command -- ...

  7. docker 的使用

    docker 学习 1. Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序. 输出Hello world docker run ubuntu:15 ...

  8. Docker简单使用

    镜像是一种轻量级.可执行的独立软件包,它包含运行某个软件所需的所有内容,包括代码.运行时.库.环境变量和配置文件. 容器是镜像的运行时实例 - 实际执行时镜像会在内存中变成什么.默认情况下,它完全独立 ...

  9. Docker 核心技术与实现原理

    提到虚拟化技术,我们首先想到的一定是 Docker,经过四年的快速发展 Docker 已经成为了很多公司的标配,也不再是一个只能在开发阶段使用的玩具了.作为在生产环境中广泛应用的产品,Docker 有 ...

随机推荐

  1. HTML中href的链接刷新页面问题

    在上一篇随笔中说到了html()方法不能一直改变标签的值的问题,当单击完成时,回调函数返回的值瞬间就没有了,今天突然想到了,我单击的是链接啊,就算链接到本界面上,也要进行刷新,页面一刷新,显示的值自然 ...

  2. gc overhead limit exceeded

    eclipse-- gc overhead limit exceeded 修改内存不足的方法如下: Eclipse报错:gc overhead limit exceeded eclipse 原因是Ec ...

  3. 给UITextField左侧加一个小图标

    xcode 6.1 File-New-Project.. iOs-Application-Simple View Application 1.写一个自定义JSTextField类,继承UITextFi ...

  4. 第一个js面向对象的小实验

    $.extend({             cal: function (num1,num2,oper,aftercal) {                 this.n1 = num1;     ...

  5. xcode7 app loader error itms 90168

    . $ cd ~/.itmstransporter   . $ rm update_check*   . $ mv softwaresupport softwaresupport.bak   . $  ...

  6. poj 1679 The Unique MST(唯一的最小生成树)

    http://poj.org/problem?id=1679 The Unique MST Time Limit: 1000MS   Memory Limit: 10000K Total Submis ...

  7. 1483:[HNOI]2009 梦幻布丁 - BZOJ

    Description N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2,2,1的四个布丁一共有3段颜色. Input 第 ...

  8. 1206: [HNOI2005]虚拟内存 - BZOJ

    Description 操作系统中一种重要的存储管理技术就是虚拟内存技术.操作系统中允许进程同时运行,也就是并行.每个进程都有其相对独立的数据块(进程运行的过程中将对其进行读写操作).理想的情况下,这 ...

  9. 1003: [ZJOI2006]物流运输trans - BZOJ

    Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球.这些星球通过 ...

  10. Hadoop的调度器总结

    Hadoop的调度器总结 随着MapReduce的流行,其开源实现Hadoop也变得越来越受推崇.在Hadoop系统中,有一个组件非常重要,那就是调度器,它的作用是将系统中空闲的资源按一定策略分配给作 ...