Linux4(Docker)

目录

一、Docker介绍

二、Docker结构

三、Docker安装

 四、Docker 镜像

五、Docker 容器

六、Docker 安装nginx

七、Docker 中的MySQL部署

 


一、Docker介绍

Docker:是给予Go语言实现的开源项目。

Docker的主要目标是“Build,Ship and Run Any App,Anywhere” 也就是通过对应的组件的封装,分发,部署,运行等 生命周期管理,是用户APP及运行环境能够做到 “一次封装,到处运行”

Docker的设计理念:构建(build)、运输(ship)、运行(running)

二、Docker结构

  • image镜像:docker镜像就是一个只读模板,比如,一个镜像可以包含一个完整的centos,里面仅安装apache或用户的其他应用,镜像可以用来创建docker容器,另外docker提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下一个已经做好的镜像来直接使用;

  • container容器:docker利用容器来运行应用,容器是从镜像创建的运行实例,它可以被启动,开始、停止、删除、每个容器都是互相隔离的,保证安全的平台,可以把容器看做是要给简易版的linux环境(包括root用户权限、镜像空间、用户空间和网络空间等)和运行在其中的应用程序;

  • repostory仓库:仓库是集中存储镜像文件的沧桑,registry是仓库主从服务器,实际上参考注册服务器上存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag);

  • 仓库分为两种:公有仓库、私有仓库,最大的公开仓库是docker Hub,存放了数量庞大的镜像供用户下载;

三、Docker安装

第一步:安装依赖工具
yum -y install yum-utils device-mapper-persistent-data lvm2
第二步:下载镜像源
yum-config-manager  --add-repo  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
第三步: 安装
yum makecache fast    这句暂时不用了
 yum -y install docker-ce
第四步: 启动
systemctl start docker
第五步:查看状态
systemctl status docker
第五步: 测试
docker run hello-world

 四、Docker 镜像

获取镜像:
docker pull 镜像名称

查看本地所有的镜像:
docker  images

删除本地镜像
docker  rmi  镜像标识

五、Docker 容器

运行容器:
docker   run  -d  -p 宿主机端口:容器端口 --name   容器名称   镜像的标识
参数解释:-d 代表后台执行-p 将当前Linux的端口和容器的端口号进行映射--name 容器的名字
查看正在运行的容器:
 docker   ps   -qa
参数解释 :-a 所有容器(包括没有运行的容器)-q 只查看标识

停止容器运行:
docker  stop  容器标识
启动容器:
docker  start  容器标识
删除容器: (只能删除停止运行的容器)
docker  rm   容器标识
docker rm  -f 容器标识  (强制删除容器,(即使是运行中的)

六、Docker 安装nginx

 1.获取镜像
docker pull nginx
 2. 创建容器并运行
docker run --name=my-nginx -p 80:80 -d  镜像编号
3. 测试
使用浏览器
docker run -d --name=my-nginx -p 12345:80 605c77e624dd
docker ps    docker ps 是 Docker 命令行工具中用于列出当前正在运行的容器的一个命令

Docker 中的nginx部署

以下是 Nginx 在 Linux Docker 中的常见目录结构:
/etc/nginx: 存放 Nginx 的配置文件。
/var/log/nginx: 存放 Nginx 的日志文件。
/usr/share/nginx/html: 存放 Nginx 的静态资源文件。
查看nginx的配置文件
docker exec my-nginx cat /etc/nginx/nginx.conf
将网站部署到docker中的nginx
 docker  cp  宿主机的网址目录   docker中的nginx名或id:/usr/share/nginx/html/
 docker  cp  ./qq  my-nginx:/usr/share/nginx/html/

七、Docker 中的MySQL部署

1.获取镜像
docker pull mysql
 2.创建环境目录:
cd /usr/local/
 mkdir mysql
 cd mysql
 mkdir master-data
3. mysql容器运行:
docker run --name  mysql-master  --privileged=true  -v 
/usr/local/mysql/master-data:/var/lib/mysql  -p 3306:3306  -e  
MYSQL_ROOT_PASSWORD=root  -d  daocloud.io/library/mysql:8.0.16  --character-set-server=utf8 --server-id=1 -
lower_case_table_names=1
参数:--privileged指定了当前容器是否真正的具有root权限-p表示宿主机上的某个端口映射到docker容器内的某个端口-d参数指定了当前容器是在后台运行--server-id 设置服务器的编号
3.配置mysql权限账户:
docker exec -it mysql-master /bin/bash
 4.登录主服务器mysql:
 mysql -uroot –p
 5. 修改密码和设置从服务器登录用户:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
 flush privileges;
 6. 配置防火墙,并用mysql视图工具来测试连接

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/763861.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LangChain入门学习笔记(七)—— 使用检索提高生成内容质量

大模型训练使用的数据是开放的、广泛的,因此它显得更加的通用。然而在有些应用场景下,用户需要使用自己的数据使得大模型生成的内容更加贴切,也有时候用户的数据是敏感的,无法提供出来给大模型进行通用性的训练。RAG技术就是一种解…

HarmonyOS APP应用开发项目- MCA助手(Day02持续更新中~)

简言: gitee地址:https://gitee.com/whltaoin_admin/money-controller-app.git端云一体化开发在线文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/agc-harmonyos-clouddev-view-0000001700053733-V5注:…

Java Lambda语法介绍

目录 一、概述 二、Lambda语法的历史 2.1 Lambda名字的含义 2.2 Lambda的历史 三、Lambda语法的核心接口 3.1 Lambda的四大核心接口 3.1.1 概述 3.1.2 Consumer 接口 3.1.3 Supplier 接口 3.1.4 Function 接口,> 3.1.5 Predicate 接口 四、Lambda的引用 4.1 概…

启航IT世界:高考后假期的科技探索之旅

随着高考的落幕,新世界的大门已经为你们敞开。这个假期,不仅是放松身心的时光,更是为即将到来的IT学习之旅打下坚实基础的黄金时期。以下是一份专为你们准备的IT专业入门预习指南,希望能助你们一臂之力。 一:筑基篇&a…

(18)GPS/指南针(一)

文章目录 前言 1 GPS/指南针 2 RTK GPS 3 GPS驱动程序选项 4 GPS自动切换 5 高级用途 前言 Copter/Plane/Rover 支持与 GPS、指南针和其他定位技术的整合: 1 GPS/指南针 Avionics Anonymous GNSS CompassAvionics Anonymous CompassBeitain BN-220 GPS / B…

昇思MindSpore学习入门-模型训练

模型训练 模型训练一般分为四个步骤: 构建数据集。定义神经网络模型。定义超参、损失函数及优化器。输入数据集进行训练与评估。 现在我们有了数据集和模型后,可以进行模型的训练与评估。 构建数据集 首先从数据集 Dataset加载代码,构建…

RT-Thread Studio与CubeMX联合编程之rtthread stm32h743的使用(十一)spi设备SFUD驱动的使用

我们要在rtthread studio 开发环境中建立stm32h743xih6芯片的工程。我们使用一块stm32h743及fpga的核心板完成相关实验,核心板如图: 1.建立新工程,选择相应的芯片型号及debug引脚及调试器 2.编译下载,可以看到串口打印正常 3.…

超实用的80个网络基础知识!(非常详细)零基础入门到精通,收藏这一篇就够了

点击上方 网络技术干货圈,选择 设为星标 优质文章,及时送达 转载请注明以下内容: 来源:公众号【网络技术干货圈】 作者:圈圈 ID:wljsghq 基础网络概念 1. 网络基础概述 什么是计算机网络 计算机网络是一…

全自动封箱机:如何助力企业实现智能化升级

在飞速发展的工业自动化时代,全自动封箱机以其高效、精准、稳定的特点,成为了生产线上的不可或缺的一员。它不仅大大地提高了生产效率,降低了人工成本,更在产品质量控制、安全性等方面发挥了重要作用。星派将深入探讨全自动封箱机…

基于SpringBoot民宿管理系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,…

华为云物联网的使用

这里我们设置三个属性 1.温度DHT11_T 上传 2.湿度DHT11_H 上传 3.风扇motor 远程控制(云平台控制设备端) 发布主题: $oc/devices/{device_id}/sys/properties/report 发布主题时,需要上传数据,这个数据格式是JSON格式…

充气膜羽毛球馆投资需要多少钱—轻空间

充气膜羽毛球馆是一种现代化的运动设施,以其灵活的结构设计和高效的能耗管理受到广泛关注。投资建设一个充气膜羽毛球馆,涉及多个方面的成本,包括基础建设、膜材选择、系统配置以及运营维护费用。轻空间将详细分析投资建设充气膜羽毛球馆的成…

【C++知识点总结全系列 (06)】:STL六大组件详细介绍与总结(配置器、容器、迭代器、适配器、算法、仿函数)

STL六大组件目录 前言1、配置器(1)What(2)Why(3)HowA.调用new和delete实现内存分配与销毁B.STL Allocator (4)allocator类A.WhatB.HowC.allocator的算法 2、容器(1)What(2)Which(有哪些容器)(3)序列容器(顺序容器)A.WhichB.array&…

Langchain-Chatchat本地部署记录,三分钟学会!

1.前言: 最近AI爆发式的火,忆往昔尤记得16,17那会移动互联网是特别火热的,也造富了一批公司和个人,出来了很多精妙的app应用。现在轮到AI发力了,想想自己也应该参与到这场时代的浪潮之中,所以就找了开源的…

【微服务网关——https与http2代理实现】

1.https与http2代理 1.1 重新认识https与http2 https是http安全版本http2是一种传输协议两者并没有本质联系 1.1.1 https与http的区别 HTTP(超文本传输协议)和 HTTPS(安全超文本传输协议)是用于在网络上交换数据的两种协议。H…

7月刷题指南|考研数学强化30天吃透《严选题》

马上就要进入7月份了,相信很多小伙伴的基础阶段已经接近尾声了。特别是数二的同学们,应该已经完成了基础部分。而数一和数三的同学由于多了一门概率论,可能需要更多的时间。不管是哪种情况,我个人认为,最晚也应该在暑假…

Qt 使用代码布局,而不使用UI布局

一、工程的建立: 1、打开Qt Creator,文件,新建文件或项目 2、选择Application,Qt Widgets Application 3、写入名称,选择qmake 4、选择基类Base class,去除Generate form 务必选择QWidget,若…

django开源电子文档管理系统_Django简介、ORM、核心模块

Django简介 Django是一种开源的大而且全的Web应用框架,是由python语言来编写的。他采用了MVC模式,Django最初是被开发来用于管理劳伦斯出版集团下的一些以新闻为主内容的网站。一款CMS(内容管理系统)软件。并于 2005 年 7 月在 BSD 许可证下发布。这套框…

传神论文中心|第15期人工智能领域论文推荐

在人工智能领域的快速发展中,我们不断看到令人振奋的技术进步和创新。近期,开放传神(OpenCSG)社区发现了一些值得关注的成就。传神社区本周也为对AI和大模型感兴趣的读者们提供了一些值得一读的研究工作的简要概述以及它们各自的论…

什么是脏读、幻读、不可重复读

数据库事务 数据库事务是指作为单个逻辑工作单元执行的一系列操作,这些操作要么全部成功执行,要么全部失败回滚,以保持数据库的一致性和完整性。在多线程或多用户同时操作时,难免会出现错乱与冲突,这就需要引入事务的…