Docker的简单安装配置

linux

2018-09-06

43

0

Docker的简单安装配置
一、 Docker包括三个基本概念:
1、 镜像(Image)
2、 容器(Container)
3、 仓库(Repository)
 
1、 Docker的安装与启动
说明:操作系统linux centos7
:yum install –y epel-release
:yum install docker-io
 
设置开机启动配置:
:chkconfig docker on #加入开机启动项
:service docker start #启动docker
 
:docker version #查看docker版本信息
:docker info #查看系统(docker)层面信息,包括管理的images,containers数等
:docker pull centos下载
:docker images [centos/nginx]查看
:docker tag db079554b4d2 nginx:111    修改镜像名字
:docker run -i –t –d [imageId] /bin/bash
:docker attach containerId//进入容器
:docker stop [containerId]停掉容器
 
第二种启动方式:
Nginx 的最大作用,就是搭建一个 Web Server。有了容器,只要一行命令,服务器就架设好了,完全不用配置。
不正常启动: $ docker container run \ -d \ -p 127.0.0.2:8080:80 \ --rm \ --name mynginx \ nginx
 
正常启动方式如下:
$ docker run \ -d \ -p 127.0.0.2:8080:80 \ --rm \ --name mynginx \ nginx
上面命令下载并运行官方的  Nginx image,默认是最新版本(latest),当前是 1.13.9。如果本机安装过以前的版本,请删掉重新安装,因为只有 1.13.9 才开始支持 server push。
上面命令的各个参数含义如下。
  • -d:在后台运行
  • -p :容器的80端口映射到127.0.0.2:8080
  • --rm:容器停止运行后,自动删除容器文件
  • --name:容器的名字为mynginx
如果没有报错,就可以打开浏览器访问 127.0.0.2:8080 了。正常情况下,显示 Nginx 的欢迎页。
 
二、安装Docker
1.检查内核版本
# uname -r      查看当前linux得版本信息
Docker要求CentOS7最低内核版本为3.1版本
2. 关闭防火墙和selinux
# systemctl stop firewalld
# setenforce 0
3.使用yum安装docker
# yum install -y docker
# systemctl start docker         开启docker服务
_______________________________________________________________________________
# ps aux | grep docker           查看docker服务
# docker search nginx            查看nginx镜像
(# docker pull centos:7  )     下载官方的 CentOS 镜像到本地
# docker pull docker.io/nginx     下载nginx镜像
# docker pull docker.io/tomcat    下载tomcat镜像
由于Docker官方服务器在海外,因此不推荐使用,这里建议使用网易蜂巢镜像中心
https://c.163.com/hub#/m/home/
4.同步时间
# date 022019512017
5.安装docker -devel
# yum -y install docker-devel
6.下载镜像
# docker pull hub.c.163.com/library/tomcat:latest
# docker pull hub.c.163.com/library/nginx:latest
# docker pull hub.c.163.com/public/centos:7.0
 
# docker images               
 
2、 镜像的获取与容器的使用
docker search [nginx/centos]
docker pull [nginx/centos]
docker images #列出所有的镜像
docker images –a
docker rmi 删除一个或多个image
docker rmi -f 强制删除一个或多个image
 
3、 容器资源限制参数
--m 1024 –memory-swap=1024m #限制内存最大使用(bug:超过后进程被杀死)
--cpuset-cpus=”0,1” #限制容器使用CPU
4、docker容器随系统自启参数
docker run –restart=always redis/nginx1
  • no – 默认值,如果容器挂掉不自动重启
  • on-failure – 当容器以非 0 码退出时重启容器 
    • 同时可接受一个可选的最大重启次数参数 (e.g. on-failure:5).
  • always – 不管退出码是多少都要重启
docker run -itd --name test01 -p IP:sport:dport -m 1024m --memory-swap=1024m --cpuset-cpus="0,1" --restart=always docker exec -it test01 bash # 进入容器也可以用exec命令
 
5、查看容器状态信息
[root@localhost ~]# docker stats [root@localhost ~]# docker stats --no-stream
 
6、进入容器 - nsenter 命令
nsenter安装 
cd /usr/src ; wget https://www.kernel.org/pub/linux/utils/util-linux/v2.28/util-linux-2.28.tar.gz ./configure --without-ncurses make nsenter && sudo cp nsenter /usr/local/bin
7、nsenter使用 
nsenter 可以访问另一个进程的名字空间。nsenter 要正常工作需要有 root 权限。 
为了连接到容器,你还需要找到容器的第一个进程的 PID,可以通过下面的命令获取。
PID=$(docker inspect --format "{{ .State.Pid }}" )
 
8、通过这个 PID,就可以连接到这个容器:
nsenter --target $PID --mount --uts --ipc --net --pid
 
更简单的,建议下载 .bashrc_docker,并将内容放到 .bashrc 中。
wget -P ~ https://github.com/yeasy/docker_practice/raw/master/_local/.bashrc_docker; echo "[ -f ~/.bashrc_docker ] && . ~/.bashrc_docker" >> ~/.bashrc; source ~/.bashrc
 
这个文件中定义了很多方便使用 Docker 的命令,例如 docker-pid 可以获取某个容器的 PID;而 
docker-enter 可以进入容器或直接在容器内执行命令。
echo $(docker-pid ) docker-enter ls docker-enter bash
 
创建nginx容器
# docker tag imageid nginx:111    修改镜像名字
# docker run -ti -d -p 80:80 hub.c.163.com/library/nginx /bin/bash       创建nginx容器
# docker run -d -i -t imageID /bin/bash 或者用该命令运行
# docker ps (-a)                                     查看docker运行中(所有)容器      
 
# docker exec -ti a62119e032b3 /bin/bash      进入后台容器并提供bash
# /usr/sbin/nginx       启动nginx服务
# apt-get update        升级vim
# apt-get install vim   安装vim

发表评论

全部评论:0条

鸿福951

努力打造一个好用的webui

热评文章

推荐文章