docker ~ ~ ~

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。

安装

centos安装:

前提条件

Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。

Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。

1、安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

2、设置镜像源

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

3、更新yum缓存

yum makecache fast

4、安装docker-ce

yum -y install docker-ce

5、启动

systemctl start docker

docker命令

查看docker程序是否存在,功能是否正常

[root@bogon docker]# docker info
Client:
Debug Mode: false Server:
Containers:
Running:
Paused:
Stopped:
Images:
Server Version: 19.03.
Storage Driver: overlay2
Backing Filesystem: xfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
..........

运行创建一个容器,-i 保证容器stdin开启,-t分配一个伪tty终端,检查是否有centos镜像没有拉取一个

[root@bogon docker]# docker run -i -t centos /bin/bash
Unable to find image 'centos:latest' locally
latest: Pulling from library/centos
d8d02d457314: Pull complete
Digest: sha256:307835c385f656ec2e2fec602cf093224173c51119bbebd602c53c3653a3d6eb
Status: Downloaded newer image for centos:latest

创建成功后,执行、bin/bash进入容器,id是daa530b55cb4,并可以在容器内进行操作,exit;退出容器

[root@daa530b55cb4 /]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.2 daa530b55cb4

列出容器,ps 只能看到正在运行的,-a 列出所有。ID、创建容器镜像、容器最后执行的命令、创建时间、退出状态、名称

[root@bogon docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES [root@bogon docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
daa530b55cb4 centos "/bin/bash" minutes ago Exited () seconds ago elastic_burnell

容器名称,创建时会自动生成一个名称,可以在创建时指定名称,方便用来识别和使用

docker run --name centos1 -i -t centos /bin/bash

启动已经停止的容器,后面可以使id或名称都可以。启动但不会进入。start 启动  restart重启 stop关闭

docker start/restart/stop centos1    

进入正在运行的容器

docker attach centos1

创建守护容器俗称后台运行的,使用-d 即可,后面的while用于测试

docker -i -t -d centos7. /bin/sh -c "while true; do echo hello; sleep 2; done"

docker logs 命令获取容器日志。可加 -f 来时事监控输出,ctrl+c 退出跟踪

[root@bogon docker]# docker logs ubuntu
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
........

top查看容器内进程

[root@bogon docker]# docker top ubuntu
UID PID PPID C STIME TTY TIME CMD
root : ? :: /bin/sh -c while true; do echo hello world; sleep ; done
root : ? :: sleep

stats统计信息,显示一个或者多个容器的cpu、内存等

[root@bogon docker]# docker stats ubuntu elastic_burnell

CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT   MEM %               NET I/O             BLOCK I/O           PIDS
d486e9aa7754 ubuntu 0.15% 168KiB / .6MiB 0.02% 648B / 0B 0B / 0B
daa530b55cb4 elastic_burnell 0.00% 380KiB / .6MiB 0.04% 648B / 0B 41kB / 0B CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
d486e9aa7754 ubuntu 0.15% 168KiB / .6MiB 0.02% 648B / 0B 0B / 0B
daa530b55cb4 elastic_burnell 0.00% 380KiB / .6MiB 0.04% 648B / 0B 41kB / 0B

在容器中运行后台任务

[root@bogon docker]# docker exec -d ubuntu touch /home/yy

删除容器 -f强制,1.62开始可以-f,以前的需要先stop

#删除指定
docker rm ID #删除所有
docker rm `docker ps -a -q`

查找镜像 仓库名 镜像描述 用户评价 是否官方 自动构建

[root@bogon file]# docker search centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official build of CentOS. [OK]
ansible/centos7-ansible Ansible on Centos7 [OK]
jdeathe/centos-ssh CentOS- 6.10 x86_64 / CentOS- 7.6. x86… [OK]
consol/centos-xfce-vnc Centos container with "headless" VNC session… [OK]
centos/mysql--centos7 MySQL 5.7 SQL database server
imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 [OK]
tutum/centos Simple CentOS docker image with SSH access
centos/postgresql--centos7 PostgreSQL is an advanced Object-Relational …
kinogmt/centos-ssh CentOS with SSH [OK]
pivotaldata/centos-gpdb-dev CentOS image for GPDB development. Tag names…
nathonfowlie/centos-jre Latest CentOS image with the JRE pre-install… [OK]
drecom/centos-ruby centos ruby [OK]
pivotaldata/centos Base centos, freshened up a little with a Do…
darksheer/centos Base Centos Image -- Updated hourly [OK]
mamohr/centos-java Oracle Java Docker image based on Centos [OK]
pivotaldata/centos-mingw Using the mingw toolchain to cross-compile t…
pivotaldata/centos-gcc-toolchain CentOS with a toolchain, but unaffiliated wi…
miko2u/centos6 CentOS6 日本語環境 [OK]
mcnaughton/centos-base centos base image [OK]
blacklabelops/centos CentOS Base Image! Built and Updates Daily! [OK]
indigo/centos-maven Vanilla CentOS with Oracle Java Developmen… [OK]
pivotaldata/centos6.-dev CentosOS 6.8 image for GPDB development
pivotaldata/centos7-dev CentosOS image for GPDB development
smartentry/centos centos with smartentry [OK]
fortinj66/centos7-s2i-nodejs based off of ryanj/centos7-s2i-nodejs. Bigg…

Docker简易安装及命令实例的更多相关文章

  1. Docker简易安装教程

    Docker介绍 Docker 是一种开源容器化技术,用于构建和容器化应用程序.Docker 使用客户端-服务器架构.Docker客户端与 Docker守护进程对话,后者负责构建.运行和分发 Dock ...

  2. docker 启动安装等命令

    确认是否安装url whereis curl 启动docker服务: sudo service docker start sudo service docker stop 安装curl sudo ap ...

  3. 在docker上安装运行mysql实例

    ps:实验环境是:CentOS Linux release 7.3  64位1.获取mysql镜像从docker hub的仓库中拉取mysql镜像docker pull mysql查看镜像docker ...

  4. linux中docker容器安装vi命令详解

    在使用docker容器时,同时你docker里的系统正好是debian或ubuntu的时候,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要 ...

  5. docker中安装ps命令

    apt-get update && apt-get install -y procps

  6. Docker初步认识安装和简单实例

    前话 问题 开发网站需要搭建服务器环境,FQ官网下载软件包,搭建配置nginx,apache,数据库等.官网没有直接可用的运行版本,担心网络流传的非官方发布软件包不安全还得自行编译官方源码安装,忘记步 ...

  7. centos中简易安装docker

    centos中简易安装docker准备环境要求:请确保自己的centos的内核版本大于3.10,使用如下linux命令: uname -r1显示如下类似信息: 3.10.0-862.3.3.el7.x ...

  8. Ubuntu下安装Docker,及Docker的一些常用命令操作

    1.什么是 Docker         Docker 是一个开源项目,Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案.         Docker 的基础是 Linux 容器(LXC ...

  9. Docker系列——Docker安装&基础命令

    Docker 概述 Docker 是一个开源的应用容器引擎,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化. ...

随机推荐

  1. 2019-2020-1 20199302《Linux内核原理与分析》第八周作业

    一.上课学习笔记 1.shell作用:①运行程序 ②重定向(输入/输出重定向) ③可编程(写脚本) 执行一个c程序时,如果切进另一个进程,会进入该进程而切不回原进程,所以需要为调用的进程创一个子进程. ...

  2. python 数据分析

    pandas 格式化数据的读取 numpy 提供数组处理,类似matlap matplotlib 数据可视化 https://www.cnblogs.com/5poi/p/7148000.html

  3. vue解决大文件断点续传

    一.概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载.在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了.一般断点下载时才用到Range和Content- ...

  4. jedis的连接池

    1.需要先打开虚拟机,并开启Linux系统的端口号:6379: 其中,第一行代码为修改字符编码格式,解决SSH中文乱码问题. 2.开启redis: 3.利用连接池实现数据的存取: (1)代码实现: i ...

  5. 【loj3045】【ZJOI2019】开关

    题目 \(n\)个开关,一开始处于关闭状态,你需要将他们按成\(s\)状态,按成了之后就停止操作; 每次按下开关的i概率为\(\frac{p_i}{\sum_{i=1}^{n}p_i}\) ,问期望步 ...

  6. 了解Python-白 驹 过 隙 , 忽 然 而 已

    白 驹 过 隙 , 忽 然 而 已 人 生 苦 短,我 用 Python -- Life is short , you need Python 代码量少,同一样问题 ,用不同的语言解决时,一般情况下P ...

  7. 解决Git - git push origin master 报错

    关注我,每天都有优质技术文章推送,工作,学习累了的时候放松一下自己. 欢迎大家关注我的微信公众号:「醉翁猫咪」 原因:github仓库中没有README.md文件 解决如下: 重新输入git push ...

  8. 深搜的剪枝技巧(三)——Sticks(可行性剪枝、上下界剪枝、最优性剪枝)

    小木棍(最优性剪枝.可行性剪枝) 一.问题描述 乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,已知每段的长都不超过 50 .现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍 ...

  9. ssh密匙互信操作【原创】

    1.简便ssh密匙信任方法 只在一台服务器上创建ssh-keygen [root@SMSJKSRVBJ02 ~]# ssh-keygen Generating public/private rsa k ...

  10. 最近b站好像把blv格式换成m4s,改成mp4之后没有声音,

    我研究了几个小时,然后知道一个方法,但是必须有电脑.1.m4s 的视频改为mp4可以拖进pr2.m4s的音频不能直接拖进pr(会报错),改为mp3也一样,要先改为mp3,然后在格式工厂里面选择,mp3 ...