Docker系列之常用命令操作手册



继上一篇博客Docker系列之原理简单介绍之后,本博客对常用的Docker命令进行实践

@

1、安装虚拟机

环境准备:

  • Centos镜像
  • VMWare or VirtualBox
  • WinSCP or XFtp
  • SecureCRT or XShell

比较推荐VirtualBox,因为VirtualBox比较轻量级,适合于学习,对于Centos的,可以去官网下载:https://www.centos.org/download/

本博客使用VirtualBox,假如是iso镜像文件的操作步骤比较麻烦,本博客略过,因为我有备份的虚拟磁盘.ova文件,所以直接管理->导入虚拟电脑,然后选择.ova文件即可



接着需要设置虚拟网络:

因为我是用WiFi的,所以默认会选择wireless,如果你是网线的,那就不要选wireless类型的,一般安装默认即可



设置好网络之后,如图,点击启动虚拟机即可



启动之后,查询一下虚拟机ip

ip addr

用SecureCRT or XShell客户端软件连接虚拟机,如图,本博客是用SecureCRT的



假如,您设置了网站,需要执行如下linux命令进行网络重置,或者直接重启虚拟机:

service network restart

2、安装Docker

安装虚拟机之后,就要安装Docker,Docker要求内核版本必须大于3.10,所以要先检查内核版本:

uname -r

docker安装部署

查看内核版本,必须是3.10+

uname -r

安装Docker

yum install docker

卸载docker

yum remove docker-*

查看Docker版本

docker -v

启动Docker

systemctl start docker

注意:假如在启动过程遇到如下报错,有可能是因为你的防火墙或者selinux没关闭

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details

解决方法:先查看报错信息

systemctl status docker

查看防火墙状态

firewall-cmd --state

临时关闭防火墙

syatemctl stop firewalld.service

永久禁止开机启动firewall

systemctl disable firewalld.service

查看selinux状态

getenforce

临时禁用

setenforce

永久禁用

 # 将SELINUX=enforce改成SELINUX=disabled
vi /etc/selinux/config

ok,接着再启动Docker

systemctl start docker

3、Docker镜像操作

操作 命令 说明
检索 docker search keywork eg: docker search tomcat 去docker hub搜索镜像的详细信息
拉取 docker pull keywork:tag eg: docker pull tomcat:latest tag是可选的,不指定默认拉取latest最新版本
列表 docker images 查看本地docker仓库的所有镜像
删除 docker rmi imageId eg: docker rmi 6408fdc94212 删除本地docker仓库镜像

去docker仓库搜索Tomcat信息

docker search tomcat

几个关键参数解释一下:

  • INDEX docker.io就是docker官网
  • NAME 镜像的名称
  • DESCRIPTION 镜像描述
  • STARS 关注数目
  • OFFICIAL 是否官方
  • AUTOMATED 是否自动的
INDEX       NAME                                    DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io docker.io/tomcat Apache Tomcat is an open source implementa... 2576 [OK]
docker.io docker.io/tomee Apache TomEE is an all-Apache Java EE cert... 72 [OK]
docker.io docker.io/dordoka/tomcat Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 ba... 53 [OK]
docker.io docker.io/bitnami/tomcat Bitnami Tomcat Docker Image 30 [OK]
docker.io docker.io/kubeguide/tomcat-app Tomcat image for Chapter 1 28
docker.io docker.io/consol/tomcat-7.0 Tomcat 7.0.57, 8080, "admin/admin" 16 [OK]
docker.io docker.io/cloudesire/tomcat Tomcat server, 6/7/8 15 [OK]
docker.io docker.io/aallam/tomcat-mysql Debian, Oracle JDK, Tomcat & MySQL 12 [OK]
docker.io docker.io/arm32v7/tomcat Apache Tomcat is an open source implementa... 10
docker.io docker.io/rightctrl/tomcat CentOS , Oracle Java, tomcat application s... 5 [OK]
docker.io docker.io/maluuba/tomcat7-java8 Tomcat7 with java8. 4
docker.io docker.io/unidata/tomcat-docker Security-hardened Tomcat Docker container. 4 [OK]
docker.io docker.io/amd64/tomcat Apache Tomcat is an open source implementa... 2
docker.io docker.io/arm64v8/tomcat Apache Tomcat is an open source implementa... 2
docker.io docker.io/99taxis/tomcat7 Tomcat7 1 [OK]
docker.io docker.io/camptocamp/tomcat-logback Docker image for tomcat with logback integ... 1 [OK]
docker.io docker.io/i386/tomcat Apache Tomcat is an open source implementa... 1
docker.io docker.io/oobsri/tomcat8 Testing CI Jobs with different names. 1
docker.io docker.io/ppc64le/tomcat Apache Tomcat is an open source implementa... 1
docker.io docker.io/appsvc/tomcat 0
docker.io docker.io/cfje/tomcat-resource Tomcat Concourse Resource 0
docker.io docker.io/jelastic/tomcat An image of the Tomcat Java application se... 0
docker.io docker.io/picoded/tomcat7 tomcat7 with jre8 and MANAGER_USER / MANAG... 0 [OK]
docker.io docker.io/s390x/tomcat Apache Tomcat is an open source implementa... 0
docker.io docker.io/secoresearch/tomcat-varnish Tomcat and Varnish 5.0 0 [OK]

去docker仓库pull Tomcat镜像

# 不指定版本的情况,默认下拉最新的latest版本,知道tag用命令:docker pull tomcat:5.7
docker pull tomcat

查看本地docker镜像列表:

docker images



删除本地镜像:

# 语法如:eg :docker rmi 6408fdc94212
docker rmi imageId

Docker官方也有详细的介绍,详情参看Docker远程镜像仓库

4、Docker容器操作

下拉镜像之后,就相当于window系统的下载了exe文件,还要安装软件才能使用,而Docker的容器部署就类似于安装exe软件

以Tomcat安装为例子:

docker run --name tomcat01 -d tomcat:latest



查看运行中的容器

# 查看所有的容器用命令docker ps -a
docker ps

启动容器

# eg: docker start 9781cb2e64bd
docker start CONTAINERID[容器ID]

stop容器

docker stop CONTAINERID[容器ID]

删除一个容器

 docker rm CONTAINERID[容器ID]

启动一个做了端口映射的tomcat

# ‐d:后台运行 ‐p: 将主机的端口映射到容器的一个端口   主机端口:容器内部的端口
docker run -d -p 8081:8080 tomcat



查看Docker容器日志

# eg:docker logs 9781cb2e64bd
docker logs container‐name[容器名]/container‐id[容器ID]

更详细的操作,可以参考docker的官方文档

Docker系列之常用命令操作手册的更多相关文章

  1. 因为一个Docker问题,我顺手整理从安装到常用命令操作手册

    今天,自己写了一部分业务代码,是常规代码的另外一种方式,不能在公司的服务器上测试,就自己在PC端搭建了一套和公司集群一样的模板,因为公司的业务模块的测试有单独的服务器(这一块还是我很稀罕的),但是,第 ...

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

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

  3. Docker系列(三)常用命令

    命令说明 docker pull 格式: docke pull [OPTIONS] NAME[:TAG] 作用:下载名称为 name 的镜像 例子: sudo docker pull dl.docke ...

  4. Docker 入门指南——常用命令

    前面已经介绍了 Docker 的安装方式,本文总结一下使用 Docker 的基本概念和常用命令. 基本概念 镜像 Image 镜像是一些打包好的已有的环境,可以被用来启动和创建容器 容器 Contai ...

  5. Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)

    简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...

  6. Hexo系列(三) 常用命令详解

    Hexo 框架可以帮助我们快速创建一个属于自己的博客网站,熟悉 Hexo 框架提供的命令有利于我们管理博客 1.hexo init hexo init 命令用于初始化本地文件夹为网站的根目录 $ he ...

  7. K8s常用命令操作

    K8s常用命令操作 一.kubectl命令补全 1.master安装命令补全,并临时生效 yum install -y bash-completion source /usr/share/bash-c ...

  8. Docker基础和常用命令

    Docker基础和常用命令 一,Docker 简介 1.1,什么是 Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,nam ...

  9. Jedis对Redis的常用命令操作

    本篇主要总结一些Jedis对Redis的常用命令操作: 1.对key操作命令 2.对String操作命令 3.对List操作命令 4.对Set操作命令 5.对Hash操作命令 6.排序操作指令 一.项 ...

随机推荐

  1. Windows系统下搭建WAMP环境

    Wamp就是Windos Apache Mysql PHP集成安装环境,即在window下的apache.php和mysql的服务器软件.其中php环境配置是至关重要的一部分,本文就针对php在本地的 ...

  2. Go组件学习——Web框架Gin

    以前学Java的时候,和Spring全家桶打好关系就行了,从Spring.Spring MVC到SpringBoot,一脉相承. 对于一个Web项目,使用Spring MVC,就可以基于MVC的思想开 ...

  3. [javascript] Javascript的笔记

    1.2019年10月20日12:28:16,学习HOW2J的Javascript, 2.一般见到的缩写js,就是javascript的意思: 3.javascript代码必须放在script标签中,s ...

  4. ACM-ICPC 2018 I. Characters with Hash

    I. Characters with Hash Mur loves hash algorithm, and he sometimes encrypt another one's name, and c ...

  5. Python开发面试集锦

    我正在编写一套python面试开发集锦,可以帮忙star一下,谢谢! 地址:GitHub专栏

  6. 【原创】(十一)Linux内存管理slub分配器

    背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...

  7. 移动端vue项目的图片上传插件

    有一移动端项目,使用的vant-ui.可是vant自带的Uploader似乎不支持一次选择多张图片上传的功能. 于是乎:在https://www.npmjs.com/查找发现找到 vue-upload ...

  8. elementui分页记录,reserve-selection

    第一步:在<el-table></el-table>标签中加上 :row-key="getRowKeys" 第二步:在<el-table-column ...

  9. C#音频截取与原文匹配2:使用ffmpeg处理音频文件

    ffmpeg获取音频时间 ffmpeg转换音频格式(单声道,16000hz,16bit  wav) ffmpeg截取音频 不知道是不是错觉,感觉ffmpeg比NAudio要快啊~ 那么这就是第二个版本 ...

  10. 炸裂函数explode

    ateral viem 表的关联只能和explode使用 hive> select explode(info) from t_map where id=1; hive> create ta ...