Docker容器

本文介绍了Docker作为Linux容器的高级封装技术,用于隔离进程和资源。详细讲解了Docker的组件协作方式,提供了三种Docker安装方法,包括Script、Yum和Rpm,并指导如何配置Docker加速。此外,还分享了Docker的应用实例,如搭建个人blog系统,以及Docker容器管理和相关命令。最后提到了Docker-compose作为容器编排工具,用于便捷管理相互关联的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker是什么

Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口,以便隔离进程和资源。Docker 将应用程序与该程序的依赖,打包在一个文件里面,当运行文件时,首先生成一个虚拟容器,之后程序在该虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心部署应用时的环境问题。

Docker是基于LXC的高级容器引擎,go语言实现。表现形式主要是应用程序内容交付如海运货物。
在这里插入图片描述

Docker组件协作方式

Docker安装

三种方式:
首先确认防火墙是否关闭

systemctl stop firewalld
systemctl disable firewalld
vim /etc/selinux/config   // centos7之后的安全机制,需要关闭,改为disabled

在这里插入图片描述
看到下图则正确关闭
在这里插入图片描述
安装iptables

yum -y install iptables-services
systemctl start iptables

Script

yum update  //更新系统
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
docker run hello-world  //默认镜像

Yum

yum update  //更新系统
cat >/etc/yum.repos.d/docker.repo << -EOF
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg EOF
yum install docker
systemctl start docker
systemctl enable docker
docker run hello-world  //默认镜像

Rpm

直接下载安装,分别下载配套的noarch和普通版本。
stable版本下载
在这里插入图片描述
将文件下载在同一个目录下

yum -y install * //安装docker
systemctl start docker
systemctl enable docker
docker run hello-world  //默认镜像

Docker加速配置

cp /lib/systemd/system/docker.service /etc/systemd/system/docker.service
chmod 777 /etc/systemd/system/docker.service //赋予权限
vim docker.service //添加新的镜像,修改ExecStart
systemctl daemon-reload 
systemctl restart docker
ps -ef | grep docker //查看docker进程

在这里插入图片描述

1. 注册阿里云账号

https://dev.aliyun.com/

2. 进入加速器页面

https://cr.console.aliyun.com/#/accelerator

3. 获取专属的加速器地址

如下图所示:点击Docker Hub镜像站点获取专属的加速器地址,将其配置给Docker引擎在这里插入图片描述

Docker应用示例

搭建自己的blog系统

docker pull wordpress //拉取wordpress镜像
docker pull mariadb //拉取数据库镜像
docker run --name db --env MYSQL_ROOT_PASSWORD=example -d mariadb //设置数据库
docker run --name MyWordPress --link db:mysql -p 8080:80 -d wordpress //设置wordpress
docker ps //查看运行的容器
docker images //查看下载的镜像
rpm -qa | grep mariadb //查看数据库版本

在浏览器中输入ip地址和端口号,简单的博客系统搭建成功。
在这里插入图片描述
在这里插入图片描述

Docker相关命令

容器唯一标识为container id(主键)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Docker容器管理

Docker是“一个容器一个进程”,而当前一个服务普遍需要多个进程来支持,容器直接使用–link选项建立两个容器之间的互联(优先级),前提是建立是mariadb已经开启。
docker-compose则是为了方便启动相互关联的应用,在yaml中设置。
容器编排工具安装

curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod a+x /usr/local/bin/docker-compose
docker-compose --version //测试是否安装成功

控制参数:
在这里插入图片描述
Docker-compose.yaml 示例

version: '3'

services:
    db:
      image: mysql:5.7
      restart:  always
      environment:
        MYSQL_ROOT_PASSWORD: somewordpress
        MYSQL_DATABASE: wordpress
        MYSQL_USER: wordpress
        MYSQL_PASSWORD: wordpress
    wordpress:
      depends_on:
        - db
      image: wordpress:latest
      restart: always
      ports:
        - "8000:80"
      environment:
        WORDPRESS_DB_HOST: db:3306
        WORDPRESS_DB_USER: wordpress
        WORDPRESS_DB_PASSWORD: wordpress

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值