Kubernetes in Action学习笔记(一)

Docker起步

准备工作

  1. centos 7
  2. virtualBox
  3. window操作系统

centos7虚拟机搭建简易手册(1)-安装第一台虚拟机
centos7虚拟机搭建简易手册(2)-双网卡设置

快速上手-安装Docker

Docker教程来源:https://docs.docker.com/

移除原有docker。

#移除原有docker
$ yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装yum相关扩展。

# 管理repository及扩展包的工具
$ yum install -y yum-utils
#yum repository管理
$ yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

安装docker。

$ yum install -y docker

启动docker。

#开机启动
$ systemctl enable docker
#启动
$ systemctl start docker
#重启
$ systemctl restart docker
#停止
$ systemctl stop docker

Hello word(docker版)

#如果本地没有hello-world镜像,会从docker仓库进行拉去后运行
$ docker run hello-world

效果如下
Kubernetes in Action学习笔记(一)_第1张图片
其他常用命令

#查看镜像
$ docker images
#或者
$ docker image list

Kubernetes in Action学习笔记(一)_第2张图片

#移除镜像
$ docker rmi 404a1c797320(实际镜像ID)

如果该镜像被容器使用,则会提示如下
移除镜像
此时需要停止相应容器运行

#停止指定容器
$ docker stop 3a4784f6edec(实际容器ID)
#移除指定容器
$ docker rm 3a4784f6edec(实际容器ID)

移除后再执行删除操作即可

#移除镜像
$ docker rmi 404a1c797320(实际镜像ID)

开始使用Docker

创建app.js,以下内容作为实例。

const http = require('http');
const os = require('os');

console.log("Kubia server starting...");

var handle = function(request, response) {
	response.writeHead(200);
	response.end("You've hit " + os.hostname() + "\n");
	console.info("Hello world.");
};

var www = http.createServer(handle);
www.listen(8080);

创建Dockefile,注意需要和app.js在同一目录下。

#FROM用来定义镜像起始内容,用于构建基础镜像,即该镜像是以node的官方镜像为基础。
FROM node
#将app.js这个文件导出到镜像的根目录下。
ADD app.js /app.js
#镜像被运行时需要执行的命令。
ENTRYPOINT  ["node", "app.js"]

在Dockerfile的根目录下构建镜像,注意kubia后面有一个"."。

#基于当前目录下的Dockerfile文件,构建名叫kubia的镜像
$ docker build -t kubia .

Kubernetes in Action学习笔记(一)_第3张图片
这里引用Kubernetes in Action中的图2.2描述构建过程
Kubernetes in Action学习笔记(一)_第4张图片
运行kubia镜像,创建kubia-container容器

#创建kubia-container容器,端口映射为8080,后台运行
$ docker run --name kubia-container -p 8080:8080 -d kubia

运行kubia
通过浏览器进行访问,或者在虚拟机中使用curl命令进行验证
验证kubia

#向127.0.0.1:8080发出 GET 请求,服务器返回的内容会在命令行输出
$ curl 127.0.0.1:8080

验证kubia
列出运行中的容器

$ docker ps

列出运行中的容器
查看更多容器信息,以json的格式返回信息。

$ docker inspect kubia-container

Kubernetes in Action学习笔记(一)_第5张图片
进行容器内部

#-i:确保标准输入流保待开放。需要在 shell 中输入命令
#-t:分配一个伪终端(TTY)
$ docker exec -it kubia-container bash

Kubernetes in Action学习笔记(一)_第6张图片
退出容器

$ exit

你可能感兴趣的:(linux,kubernetes,docker,docker,linux,kubernetes)