在Ubuntu操作系统上安装/使用/卸载Docker容器引擎

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: 这篇文章详细介绍了在Ubuntu操作系统上安装、配置、使用、基本操作以及卸载Docker容器引擎的步骤,包括配置Docker镜像加速和使用Docker部署Nginx、MySQL和Redis服务器的方法。

前言

简单记录一下如何在Ubuntu操作系统上安装、使用、卸载Docker容器引擎,以及配置Docker镜像加速地址。使用Docker分别部署单机Nginx、MySQL、Redis服务器。

一、在Ubuntu操作系统上安装Docker容器引擎

(1)直接使用 apt 安装,一般这样也自动启动好了

apt install docker.io

二、验证安装成功,以及启动与校验

(1)查看 Docker 版本

docker --version

(2)查看 Docker 状态

systemctl status docker

(3)启动 Docker

systemctl start docker

(4)停止 Docker

systemctl stop docker

(5)重启 Docker

systemctl restart docker

(6)开机自启动 Docker

systemctl enable docker

(7)执行 docker ps 命令,若不报错,则说明启动成功

docker ps

三、镜像加速

1.修改【/etc/docker/daemon.json】文件,没有就创建这个文件,然后网上随便找一下Docker镜像加速地址并填入

{
   
  "registry-mirror": [
    "https://registry.docker-cn.com"
  ],
  "insecure-registries": [
    "registry.docker-cn.com"
  ]
}

2.重载生效

systemctl daemon-reload
systemctl restart docker

3.如果是内网镜像地址,搜索和拉取镜像的命令可能如下

(1)搜索镜像

docker search registry.docker-cn.com/nginx

(2)拉取镜像

docker pull registry.docker-cn.com/official/nginx

四、基本操作命令

1.查看可用镜像
docker search ubuntu

2.拉取镜像,如拉取Ubuntu镜像
docker pull ubuntu

3.启动Ubuntu镜像
docker run -it ubuntu /bin/bash

4.查看镜像内文件
ll

5.退出镜像
exit

6.列出所有镜像
docker images -a

7.删除镜像
docker rmi 镜像ID

8.查看所有容器
docker ps -a

9.启动容器
docker start 容器名

10.停止容器
docker stop 容器名

11.重启容器
docker restart 容器名

12.更改容器名字
docker rename 旧名称 新名称

13.与容器内的环境进行交互
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

14.列出所有运行中的容器
docker ps

15.列出所有的容器
docker ps -a

16.删除容器
docker rm 容器ID或容器名称

五、卸载Docker容器引擎

(1)卸载软件和配置文件

apt-get purge docker.io

(2)使用【rm -rf】删除【whereis docker】和【which docker】搜出来的相关目录和文件

whereis docker
which docker

六、Docker创建MySQL实例并启动

(1)搜索镜像

docker search mysql

(2)拉取镜像

docker pull mysql

(3)实例化启动命令

docker run -d \
--name czq_mysql \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
镜像名

docker run -d \
--name czq_mysql \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
--privileged=true \
-v /opt/mysql/data:/var/lib/mysql \
-v /opt/mysql/conf:/etc/mysql/ \
-v /opt/mysql/logs:/var/log/mysql \
镜像名

docker run -d \
--name czq_mysql \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /opt/mysql/data:/var/lib/mysql \
-v /opt/mysql/conf:/etc/mysql/conf.d \
镜像名

七、Docker创建Nginx实例,挂载html目录、配置文件并启动

(1)搜索镜像

docker search nginx

(2)拉取镜像

docker pull nginx

(3)实例化启动命令,包括相关配置

docker run -d \
--name czq_nginx \
-p 80:80 \
-p 443:443 \
镜像名

mkdir /opt/nginx/
cd /opt/nginx/

docker cp czq_nginx:/etc/nginx/nginx.conf ./
docker cp czq_nginx:/etc/nginx/conf.d ./
docker cp czq_nginx:/usr/share/nginx/html ./

mkdir /opt/nginx/logs

docker stop czq_nginx
docker rm czq_nginx

docker run -d \
--name czq_nginx \
--restart always \
--privileged=true \
-p 80:80 \
-p 443:443 \
-v /opt/nginx/html:/usr/share/nginx/html \
-v /opt/nginx/logs:/var/log/nginx \
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /opt/nginx/conf.d:/etc/nginx/conf.d \
镜像名

mkdir /opt/nginx/certs

docker stop czq_nginx
docker rm czq_nginx

docker run -d \
--name czq_nginx \
--restart always \
--privileged=true \
-p 80:80 \
-p 443:443 \
-v /opt/nginx/html:/usr/share/nginx/html \
-v /opt/nginx/logs:/var/log/nginx \
-v /opt/nginx/certs:/etc/ssl/certs \
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /opt/nginx/conf.d:/etc/nginx/conf.d \
镜像名

八、Docker创建Redis实例,挂载目录、配置文件并启动

(1)搜索镜像

docker search redis

(2)拉取镜像

docker pull redis

(3)实例化启动命令,包括相关配置

mkdir /opt/redis/data
mkdir /opt/redis/conf
touch /opt/redis/conf/redis.conf

docker run -d \
--name czq_redis \
-p 6379:6379 \
--privileged=true \
-v /opt/redis/data:/data \
-v /opt/redis/conf/redis.conf:/etc/redis/redis.conf \
镜像名
目录
相关文章
|
4月前
|
Ubuntu 安全 iOS开发
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
311 5
|
4月前
|
NoSQL Ubuntu MongoDB
在Ubuntu 22.04上安装MongoDB 6.0的步骤
这些步骤应该可以在Ubuntu 22.04系统上安装MongoDB 6.0。安装过程中,如果遇到任何问题,可以查阅MongoDB的官方文档或者Ubuntu的相关帮助文档,这些资源通常提供了解决特定问题的详细指导。
472 18
|
4月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
4月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
622 6
|
4月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
448 6
|
5月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
377 18
|
4月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
765 4