Docker是一个开源的应用容器引擎,允许开发者将应用以及依赖打包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows上。它非常适用于持续集成与持续交付(CI/CD)。

1. 安装Docker

首先,你需要在你的服务器上安装Docker。根据你的操作系统,可以选择适合的安装方法。

(1)对于Ubuntu:

sudo apt-get update
sudo apt-get install docker.io

启动Docker并设置为开机启动:

sudo systemctl start docker
sudo systemctl enable docker

(2)对于Centos:

  1. 安装所需的包

首先,确保你已经安装了必要的软件包。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 添加Docker存储库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  1. 安装Docker CE
sudo yum install docker-ce
  1. 启动Docker并使其开机启动
sudo systemctl start docker
sudo systemctl enable docker
  1. 验证Docker是否正确安装

运行一个简单的Docker Hello World镜像来验证安装是否成功:

docker run hello-world

如果你看到Hello World的消息,那么Docker已经成功安装并正在运行。

注意: 安全最佳实践建议您不要使用root用户来运行Docker容器。您可以通过创建一个docker用户组并将用户添加到该组来避免使用root权限。此外,还建议使用Docker提供的安全增强功能,如AppArmor、SELinux等来提高Docker容器的安全性。

参考教程:Centos7下安装Docker(详细安装教程)通俗易懂-腾讯云开发者社区-腾讯云 (tencent.com)

2. Docker基本命令

  1. 查看Docker版本

    docker --version
  2. 运行一个Docker容器

    如果你想要运行一个简单的nginx服务器,你可以执行以下命令:

    docker run -d -p 80:80 nginx
  3. 查看正在运行的Docker容器

    docker ps

    若要查看所有容器(包括停止的),可以使用:

    docker ps -a
  4. 停止容器

    docker stop [容器ID或容器名]
  5. 移除容器

    docker rm [容器ID或容器名]
  6. 查看本地的Docker镜像

    docker images
  7. 移除Docker镜像

    docker rmi [镜像ID或名称]
  8. 构建Docker镜像

    在Dockerfile所在的目录中,执行:

    docker build -t [镜像名]:[标签] .
  9. Docker日志

    查看容器的输出:

    docker logs [容器ID或容器名]

3. Docker Compose

Docker Compose是一个用于定义和运行多容器Docker应用的工具。你可以使用YAML文件定义应用的服务、网络和卷,然后使用docker-compose命令来启动和停止这些服务。

  1. 启动服务

    docker-compose up
  2. 在后台启动服务

    docker-compose up -d
  3. 停止服务

    docker-compose down

Docker使用教程及常用命令的更多相关文章

  1. Docker基础教程(常用命令篇)

    1.查看docker信息 # 查看docker版本 $docker version # 显示docker系统的信息 $docker info 2.启动容器 # 交互式 $docker run -it ...

  2. ###Git 基础图解、分支图解、全面教程、常用命令###

    一.Git 基础图解 转自:http://www.cnblogs.com/yaozhongxiao/p/3811130.html Git 图解剖析 git中文件内容并没有真正存储在索引(.git/in ...

  3. Mysql免安装版配置教程和常用命令图

    Mysql免安装版配置教程 图文版 配置环境变量 新建一个my.ini文件,添加下面内容 [mysqld] basedir=C:\\software\Mysql\mysql-5.7.14-winx64 ...

  4. gitbook 入门教程之常用命令详解

    不论是 gitbook-cli 命令行还是 gitbook editor 编辑器都离不开 gitbook 命令的操作使用,所以再次了解下常用命令. 注意 gitbook-cli 是 gitbook 的 ...

  5. windows下docker的安装及常用命令学习

    docker search 镜像名 本文主要介绍Docker在Windows下的安装.关于Docker的介绍和文档在其官网中可以找到:http://www.docker.com .安装环境:Windo ...

  6. docker的安装及常用命令

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

  7. Docker的入门及常用命令

    Docker入门及常用命令 1. 各个容器之间是相互隔离状态: 这样减少了我们软件之间的影响. 2. docker是os层虚拟化架构的一种产品体现, os层虚拟化架构出来的操作系统需要和宿主机操作系统 ...

  8. Docker第二弹之常用命令

    Docker的常用命令 底层原理 Docker是如何工作的 Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上, 然后通过Socket连接从客户端访问,守护进程从 ...

  9. 【Docker】docker的安装和常用命令

    一.docker安装和启动 1.yum 命令 yum install docker 2.docker启动命令 sudo systemctl start docker 二.docker常用命令 dock ...

  10. docker入门资料及常用命令

      Docker17中文开发手册 :https://www.php.cn/manual/view/36147.html   Linux部署Docker及常用命令: https://www.cnblog ...

随机推荐

  1. 这个字段我明明传了呀,为什么收不到 - Spring 中首字母小写,第二个字母大写造成的参数问题

    问题现象 vSwitchId.uShape.iPhone... 这类字段名,有什么特点?很容易看出来吧,首字母小写,第二个字母大写.它们看起来确实是符合 Java 中对字段所推崇的"小驼峰命 ...

  2. Syncthing 忽略模式

    忽略模式 概要 .stignore 描述 这是 Syncthing 同步文件夹的忽略模式语法指南 语法 .stignore 文件可包含一系列路径匹配模式,对指定文件的处理方式由第一个匹配到它的模式决定 ...

  3. 2020-10-15:mysql的双1设置是什么?

    福哥答案2020-10-15:#福大大架构师每日一题# [答案来自知乎:](https://www.zhihu.com/question/425704691) 其实就是innodb_flush_log ...

  4. 2020-11-19:go中,defer原理是什么?

    福哥答案2020-11-19:- - 什么是defer - defer是go语言提供的一种用于注册延迟调用的机制:让函数或者语句在当前函数执行完毕(包括return正常结束或者panic导致的异常结束 ...

  5. 2021-05-16:时间复杂度必须是logN,如何求阶乘从右向左第一个不为零的数?

    2021-05-16:时间复杂度必须是logN,如何求阶乘从右向左第一个不为零的数? 福大大 答案2021-05-16: 这道题logN的解法是大步小步法,网上非常难找.另外论代码简洁度,明显是我的代 ...

  6. 【C++】requires关键字简介

    requires 是 C++20 中引入的一个新关键字,用于在函数模板或类模板中声明所需的一组语义要求,它可以用来限制模板参数,类似于 typename 和 class 关键字. requires关键 ...

  7. 把vue组件发布到npm

    一直以来项目都使用他人开发的组件,于是乎自己也想倒腾着做一个,发布到npm 在其他项目里直接使用,这个组件上传和纯js 还是有一定区别的,在这个过程中也遇到了一些小问题,网上找了许多案例,都不是太全面 ...

  8. JavaScript原型与原型链深入理解

    原型: 每一个js 对象(null除外)都会和另一个对象相关联,"另一个"对象就被我们称之为'原型', 而每一个原型拥有一个prototype 属性指向原型对象(就是原型的实例)的 ...

  9. 基于Expression Lambda表达式树的通用复杂动态查询构建器——《构思篇一》

    在上一篇中构思了把查询子句描述出来的数据结构,那么能否用代码将其表达出来,如何表达呢? 再次回顾考察,看下面的查询子句: Id>1 and Id<10 如上所示,有两个独立的条件分别为Id ...

  10. Linux下程序时间消耗监控与统计

    良好的计时器可帮助程序开发人员确定程序的性能瓶颈,或对不同算法进行性能比较.但要精确测量程序的运行时间并不容易,因为进程切换.中断.共享的多用户.网络流量.高速缓存访问及转移预测等因素都会对程序计时产 ...