docker 环境搭建、docker 与容器常用指令大全

目录
  • 一、Docker 环境搭建
    • 1. 准备工作(已有 Linux 环境可省略)
    • 2. 安装 Docker
    • 3. 设置 ustc 镜像
  • 二、Docker/容器操作命令汇总
    • 1. Docker 操作命令
    • 2. 镜像相关命令
    • 3. 查看容器
    • 4. 创建容器
    • 5. 停止与启动容器
    • 6. 文件挂载
    • 7. 目录挂载
    • 8. 查看容器 IP 地址
    • 9. 删除容器

一、Docker 环境搭建

1. 准备工作(已有 Linux 环境可省略)

在这里我们用 VM 虚拟机 + CentOS 的环境进行 Docker 部署(建议使用 CentOS 7 以上版本)。

首先准备一台 CentOS 系统的虚拟机,可以看到主机的 IP 地址为 192.168.200.129;

为了更加直观,我将使用 Xhell 7 连接虚拟机进行操作演示;

2. 安装 Docker

第一步:yum 包更新到最新;

//更新yum
sudo yum update

第二步:安装需要的软件包,yum-util(提供 yum-config-manager 功能),device-mapper-persistent-datalvm2(devicemapper 驱动依赖);

//安装需要的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

第三步:设置 yum 源为阿里云;

//设置阿里云源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

第四步:安装 Docker;

//安装docker
sudo yum install docker-ce

第五步:检查 Docker 版本;

//检查 docker 版本
docker -v

使用 docker -v 命令可以查看到版本号即说明安装成功。

3. 设置 ustc 镜像

Docker 安装完成之后还需要执行一个操作那就是设置国内镜像站点,否则 Docker 中下载操作会很慢。

ustc 是老牌 Linux 镜像服务提供者,它的 Docker 加速器速度很快,而且不需要注册,是真正的公共服务。

需要注意的是在设置之前要先启动 docker 服务,如果不启动服务就编辑 .json 文件是无法正常保存的,因为它无法找到 Docker 进程。启动 Docker 服务使用指令:

service docker start

然后 vi 进入文件 /etc/docker/daemon.json,在文件中添加以下内容;

{
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

退出保存即可。

二、Docker/容器操作命令汇总

1. Docker 操作命令

systemctl start docker  //启动 Docker;

systemctl stop docker  //停止 Docker;

systemctl restart docker  //重启 Docker;

systemctl status docker  //查看 Docker 状态;

systemctl enable docker  //开机自启动 Docker;

docker info  //查看 Docker 概要信息;

docker --help  //查看 Docker 帮助文档;

2. 镜像相关命令

docker images  //查看镜像(这些镜像都存储于 /var/lib/docker 目录下)

  • repository - 镜像名称;
  • tag - 镜像标签;
  • image id - 镜像 id;
  • created - 镜像的创建日期;

size - 镜像的大小;

docker search 镜像名称  //搜索镜像,从网络查找需要的镜像

  • name - 仓库名称;
  • description - 镜像描述;
  • stars - 用户评价,反映该镜像的受欢迎程度;
  • official - 是否官方;

automated - 自动构建,表示该镜像是由 Docker Hub 自动构建流程创建的。

docker pull 镜像名称  //拉取镜像,从中央仓库下载镜像到本地

如下载 centos 7 镜像:

docker rmi 镜像ID  //删除镜像,可根据镜像 ID 也可根据镜像名称

docker rmi `docker images -q`  //删除所有镜像

3. 查看容器

docker ps  //查看容器

docker ps -a  //查看所有容器

docker ps -l  //查看最后一次运行的容器

docker ps -f statu=exited  //查看停止的容器

4. 创建容器

docker run

docker run 参数

包含参数如下:

  • -i  运行容器
  • -t  容器启动后自动进入其命令行
  • --name  为创建的容器命名
  • -v  表示目录映射关系,前者为宿主机目录,后者是映射到宿主机上的目录
  • -d  加了这个参数则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器)

-p  表示端口映射,前者为宿主机端口,后者是容器内的映射端口

常用创建容器的方式为交互式创建容器和守护式创建容器,如下:

//交互式创建容器
docker run -it --name=容器名称 镜像名称:标签 /bin/bash
//退出当前容器
exit
//守护式创建容器
docker run -di --name=容器名称 镜像名称:标签
//登录守护式容器
docker exec -it 容器名称/ID /bin/bash

5. 停止与启动容器

docker stop 容器名称/ID  //停止容器

docker start 容器名称/ID  //启动容器

6. 文件挂载

docker cp 需要拷贝的文件/目录 容器名称:目录  //将文件拷贝到容器内

docker cp 容器名称:目录 需要拷贝的文件/目录  //将文件从容器拷贝出来

7. 目录挂载

在创建容器时,我们可以将宿主机的目录与容器内的目录进行映射,这样就可以通过修改宿主机的目录文件从而直接影响容器了。

docker run -di -v 宿主机目录:容器目录 --name=容器名称 镜像名称:标签

如果共享多级的目录,可能会出现权限不足的提示。这是由于 CentOS 7 中的安全模块 selinux 将权限禁止了,这时候可以添加参数 --privileged=true 来解决此问题。

8. 查看容器 IP 地址

docker inspect 容器名称/ID  //查看容器 ip 以及相关的各种数据

docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称/ID  //查看容器 ip 地址并输出

9. 删除容器

docker rm 容器名称/ID  //删除指定的容器

需要注意的是如果想要删除一个容器,需要先停止该容器;且如果镜像中有运行状态的容器,也是无法删除容器的。

到此这篇关于docker 环境搭建、docker 与容器常用指令大全的文章就介绍到这了,更多相关docker容器常用指令内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 基于docker的caffe环境搭建方法

    为什么要用docker, 熟悉docker 其实已经很久了,自从实习的时候觉得它是一个利器以来一直没有机会使用它,这几天在折腾caffe环境中,觉得是时候用上Docker了. 需求:构建一个独立的容器,里面安装了caffe 的所有依赖,在需要跑代码的时候,直接运行它. 优点:可以解决各种依赖问题,比如这个软件需要安装gcc 4.7 ,而另外一个需要安装gcc 4.8 等等互斥的环境需求. Docker 安装 docker 的安装和基本使用,可以参照我上面的两篇博客:安装篇 和 使用篇 . 构建镜

  • Docker环境搭建的简单方法

    首先了解一下Docker是什么? Docker是一个容器引擎,可以用来部署应用.通过 Docker,可以实现快速交付,测试和部署代码,可移植性强. Docker主要包括3个基本概念: 镜像.容器.仓库 镜像:是用于创建 Docker 容器的模板,类似于我们装虚拟机的时候下载的windows或者linux系统镜像. 容器:是独立运行的一个或一组应用,是镜像运行时的实体,类似于我们在虚拟机软件上安装一个windows系统,那这个运行的系统就是一个容器.容器可以被创建.启动.停止.删除.暂停等. 仓库

  • docker环境搭建mgr集群的问题及原理

    目录 MGR概念 为何选用MGR MGR原理 单主模式 多主模式 环境准备 docker搭建MRG步骤 1.拉取mysql8镜像 2.创建docker专用网络 3.创建存储数据相关目录 4.启动3个mysql容器 4.查看已启动的容器 5.修改配置参数 6.重启3个容器 7.分别登录到各个docker容器,查看下容器的信息 安装MGR插件(3个容器内均执行) 设置数据复制账号(3个容器内均执行) 开启MGR单主模式 1.启动MGR,在主库(172.72.0.15)上执行 2.其他两个节点加入MG

  • Docker 容器操作指令汇总详解

    1. 创建并运行 一个容器 docker run -it --rm centos:latest bash run 运行容器 -it 以交互方式运行容器 --rm 退出容器后删除容器 centos:latest 基于 镜像启动容器 bash 命令 交互式shell 2. 退出容器 exit 3. 查看容器 docker ps 查看正在运行的容器 docker ps -a 查看所有容器 4.删除容器 docker rm [容器id ] 5 . 查看 镜像 容器 数据卷 占用空间 docker sys

  • Docker Consul概述以及集群环境搭建步骤(图文详解)

    目录 一.Docker consul概述 二.基于 nginx 与 consul 构建自动发现即高可用的 Docker 服务架构 一.Docker consul概述 容器服务更新与发现:先发现再更新,发现的是后端节点上容器的变化(registrator),更新的是nginx配置文件(agent) registrator:是consul安插在docker容器里的眼线,用于监听监控节点上容器的变化(增加或减少,或者宕机),一旦有变化会把这些信息告诉并注册在consul server端(使用回调和协程

  • docker 环境搭建、docker 与容器常用指令大全

    目录 一.Docker 环境搭建 1. 准备工作(已有 Linux 环境可省略) 2. 安装 Docker 3. 设置 ustc 镜像 二.Docker/容器操作命令汇总 1. Docker 操作命令 2. 镜像相关命令 3. 查看容器 4. 创建容器 5. 停止与启动容器 6. 文件挂载 7. 目录挂载 8. 查看容器 IP 地址 9. 删除容器 一.Docker 环境搭建 1. 准备工作(已有 Linux 环境可省略) 在这里我们用 VM 虚拟机 + CentOS 的环境进行 Docker

  • docker环境搭建JMeter+Grafana+influxdb可视化性能监控平台的教程

    目录 1.安装docker 2.安装及配置influxDB 3.Grafana安装及配置 4.Jmeter配置及压测一个接口 背景: 在用jmeter压测接口的时候发现其原生的监控起来不是很友好,在网上查阅的时候发现结合influxDB和grafana,出来的报告很炫酷,监听结果看起来很舒服很明了. 前言: InfluxDB:是一款用Go语言编写的开源分布式时序数据库.该数据库现在主要用于存储涉及大量的时间戳数据. 小数据量的时候还性能还不错,但是数据量大一点,性能问题就体现出来了.不过只是收集

  • Docker环境搭建Jenkins在构建任务时控制台日志出现中文乱码的问题

    一.问题描述: 在Linux环境Centos操作系统下,通过Docker下载Jenkins镜像后创建了容器,并且通过服务器IP+端口访问Jenkins地址,进行相关的配置,然后创建任务job来构建跑java+selenium自动化测试脚本,目前构建Success,唯一不足之处是打印的日志出现就了乱码,如下图: (备注:执行机就是jenkins本身,同一台机器) 二.排查Jenkins设置 Jenkins系统设置查看全局属性中语言部分 2.Jenkins详细信息(浏览器Jenkins地址后面加上/

  • docker环境下安装jenkins容器的详细教程

    推荐docker学习资料:https://www.runoob.com/docker/docker-tutorial.html 一.Centos7环境 docker安装 先到官网下载镜像,docker镜像官方:https://hub.docker.com/ 1.最新版安装 yum install -y yum-utils device-mapper-persistent-data lvm2 2.加入docker源 yum-config-manager --add-repo https://mir

  • CentOS7 Nvidia Docker环境搭建

    最近在搞tensorflow的一些东西,话说这东西是真的皮,搞不懂.但是环境还是磕磕碰碰的搭起来了 其实本来是没想到用docker的,但是就一台配置较好的服务器,还要运行公司的其他环境,vmware esxi用起来太费劲,还是算了. 环境: 系统:CentOS7 7.4 1708 显卡:Nvidia 1080Ti 下载所有需要的东东 1.docker-ce yum repo : https://download.docker.com/linux/centos/docker-ce.repo 2.n

  • 详解Centos6.5下docker 环境搭建

    一.运行docker Linux内核版本需要在3.8以上,针对centos6.5 内核为2.6的系统需要先升级内核.不然会特别卡,退出容器. 在yum的ELRepo源中,有mainline(3.13.1).long-term(3.10.28)这2个内核版本,考虑到long-term更稳定,会长期更新,所以选择这个版本. 1.查看当前版本: [root@localhost ~]# more /etc/issue CentOS release 6.5 (Final) Kernel \r on an

  • 三分钟完成 ubuntu16.04初始化,Java,maven,docker环境的部署问题

    Fast-Linux 项目地址:https://gitee.com/uitc/Fast-Linux 介绍 Linux初始化和一些常用环境的搭建是一个虽简单但费时的工作,尤其是你的Linux由于某种不可控的因素宕机了,这意味着你又要从头开始部署一遍环境,有些令人抓狂,因此我有了搭建这个Linux初始化脚本库的想法,不管小白还是大佬,只需一键运行,然后喝杯咖啡,环境便可搭建成功,岂不美滋滋? 由于个人能力有限,只能总结我碰到的环境脚本(我是Java开发,不熟悉python,c/c++等) 由于lin

  • 详解用Docker快速搭建一个博客网站

    目录 一.准备工作 二.部署流程  三.访问测试 Halo 是一款现代化的个人独立博客系统,给习惯写博客的同学多一个选择. 官网地址:https://halo.run/ 一.准备工作 本章教程基于Docker搭建,所以需要你提前在服务器上安装好Docker环境. Docker安装教程:https://www.jb51.net/article/94067.htm 二.部署流程 (1)创建工作目录 mkdir ~/.halo && cd ~/.halo (2)下载配置文件到工作目录 wget

随机推荐