美文网首页
2018-01-02 Docker入门教程 Day1

2018-01-02 Docker入门教程 Day1

作者: 鸭鸭学语言 | 来源:发表于2018-01-03 20:49 被阅读0次

1. install centos mini

2. virtualbox 虚机网桥配置:

http://blog.csdn.net/landebug/article/details/71412649

https://www.centos.bz/2017/08/virtualbox-centos7-nat-bridge/

查看系统版本信息:

hotsnamectl status

cat /etc/system-release

cat /etc/os-release

3. 更改主机名:

hostnamectl set-hostname <hostname>

4. 安装docker

http://www.docker.org.cn/book/install/install-docker-on-rhel-29.html 

docker镜像和容器文件 的路径 : /var/lib/docker

try ubuntu container:  运行ubuntu镜像里的命令bash

[root@centos-mini-1 ~]# docker run -it ubuntu bash

5. 个性化配置docker

https://docs.docker.com/engine/admin/#view-stack-traces

6. 已经发布的可用image仓库

index.docker.io

使用方法:

// (1) yum install git

(2) 比如我要用mariadb, 按repository内details来创建本地 image

[root@centos-mini-1 jox]# docker search mariadb

在docker的镜像索引网站上面,镜像都是按照用户名/镜像名的方式来存储的。但经过官方的验证,值得信任的,直接用镜像名存储。

[root@centos-mini-1 jox]# docker pull mariadb

(3) 由镜像创建并启动 一个daemon态的 docker

启动docker,即让docker以所分配资源在image上运行某些命令

docker run [--name <container_name>]  image  [command]/[service_name]

[root@centos-mini-1 jox]# docker run --name mariadb-test-1 -e MYSQL_ROOT_PASSWORD=$Killer64You -itd mariadb:10.3.3

Digest: sha256:5feb530514e4cfd0d3a9a8e4623b198f0d5569d11fb974631c50d94157073ea0

Status: Downloaded newer image for mariadb:10.3.3

--name string      Assign a name to the container

mariadb-test-1 --  container name

-e, --env list         Set environment variables

-d                          Run container in background and print container ID 

10.3.3 -- mariadb tag(version)

mariadb:10.3.3 -- image

7. 进入docker的3种方法

A.  docker attach  ---- 相当于共享console

[root@centos-mini-1 containers]# docker attach ee6c653827a7  

B. ssh    ---- 不建议

C. nsenter  ---- nsenter能访问另一进程的命名空间

    a. 安装nsenter : 

        yum install wget gcc

        wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz  && tar -xzvf util-linux-2.24.tar.gz && cd util-linux-2.24 && ./configure --without-ncurses && make nsenter && cp nsenter /usr/local/bin

    b. 获取该容器的第一个进程的PID:

        [root@centos-mini-1 util-linux-2.24]# docker inspect ee6c653827a7        ----   能列出docker ee6c653827a7的所有属性

        [root@centos-mini-1 util-linux-2.24]# docker inspect ee6c653827a7 -f {{.State.Pid}}

        469

    c. 进入docker:

        nsenter --target 469 --mount --uts --ipc --net --pid  

相关文章

网友评论

      本文标题:2018-01-02 Docker入门教程 Day1

      本文链接:https://www.haomeiwen.com/subject/rtvfnxtx.html