前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker系列之常用命令操作手册

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

作者头像
SmileNicky
发布2020-01-13 15:00:14
7120
发布2020-01-13 15:00:14
举报
文章被收录于专栏:Nicky's blogNicky's blog

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

代码语言:javascript
复制
ip addr

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

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

代码语言:javascript
复制
service network restart

2、安装Docker

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

代码语言:javascript
复制
uname -r 

docker安装部署

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

代码语言:javascript
复制
uname -r

安装Docker

代码语言:javascript
复制
yum install docker

卸载docker

代码语言:javascript
复制
yum remove docker-*

查看Docker版本

代码语言:javascript
复制
docker -v

启动Docker

代码语言:javascript
复制
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

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

代码语言:javascript
复制
systemctl status docker

查看防火墙状态

代码语言:javascript
复制
firewall-cmd --state

临时关闭防火墙

代码语言:javascript
复制
syatemctl stop firewalld.service

永久禁止开机启动firewall

代码语言:javascript
复制
systemctl disable firewalld.service

查看selinux状态

代码语言:javascript
复制
getenforce

临时禁用

代码语言:javascript
复制
setenforce

永久禁用

代码语言:javascript
复制
 # 将SELINUX=enforce改成SELINUX=disabled
 vi /etc/selinux/config

ok,接着再启动Docker

代码语言:javascript
复制
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信息

代码语言:javascript
复制
docker search tomcat

几个关键参数解释一下:

  • INDEX docker.io就是docker官网
  • NAME 镜像的名称
  • DESCRIPTION 镜像描述
  • STARS 关注数目
  • OFFICIAL 是否官方
  • AUTOMATED 是否自动的
代码语言:javascript
复制
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镜像

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

查看本地docker镜像列表:

代码语言:javascript
复制
docker images

删除本地镜像:

代码语言:javascript
复制
# 语法如:eg :docker rmi 6408fdc94212
docker rmi imageId

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

4、Docker容器操作

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

以Tomcat安装为例子:

代码语言:javascript
复制
docker run --name tomcat01 -d tomcat:latest

查看运行中的容器

代码语言:javascript
复制
# 查看所有的容器用命令docker ps -a
docker ps

启动容器

代码语言:javascript
复制
# eg: docker start 9781cb2e64bd
docker start CONTAINERID[容器ID]

stop容器

代码语言:javascript
复制
docker stop CONTAINERID[容器ID]

删除一个容器

代码语言:javascript
复制
 docker rm CONTAINERID[容器ID]

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

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

查看Docker容器日志

代码语言:javascript
复制
# eg:docker logs 9781cb2e64bd
docker logs container‐name[容器名]/container‐id[容器ID]

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-12-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、安装虚拟机
  • 2、安装Docker
  • 3、Docker镜像操作
  • 4、Docker容器操作
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档