Docker基础语法

目录

一.docker安装

二.docker基础名词

三.docker基础命令

四.命令别名

五.数据卷

六.挂载本地目录或文件

七.Docker镜像

八.网络


一.docker安装


1.安装yum工具
yum install -y yum-utils device-mapper-persistent-data lvm2


2.安装 docker  yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


3.安装docker
yum install docker-ce


4.启动docker
systemctl start docker


5.查看docker状态
systemctl status docker


6.开机启动
systemctl enable docker


二.docker基础名词


镜像:应用及其运行所需要的环境、配置、系统级函数库


容器:docker会在运行镜像时创建一个隔离外界的环境


镜像仓库:提供存储、管理Docker镜像的服务器


三.docker基础命令
 

docker运行命令:

docker run -d \   创建并运行一个容器,-d则是让容器以后台进程运行

--name mysql \    给容器起个名字叫mysql 注:取容器名时,最好不要与镜像名重复

-p 3306:3306 \    设置端口映射   :给端口时前面的端口与后面的端口最好不同              

-e TZ=Asia/Shanghai \  配置容器内进程运行时的一些参数

-e MYSQL_ROOT_PASSWORD=123 \

mysql  设置镜像名称

对-p参数的解释:

 -p 宿主机端口:容器内端口,示例中就是将宿主机的3306映射到容器内的3306端口

常见基本命令:

用一副图来表示这些命令的关系:

四.命令别名

1.修改/.bashrc文件

vi ~/.bashrc

2.添加别名

alias dps='docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"'

3.使别名生效

source /root/.bashrc

五.数据卷

数据卷:是一个虚拟目录,是容器内目录宿主机目录之间映射的桥梁

数据卷将宿主机和Nginx容器关联:

在上图中:

  • 我们创建了两个数据卷:confhtml

  • Nginx容器内部的conf目录和html目录分别与两个数据卷关联。

  • 而数据卷conf和html分别指向了宿主机的/var/lib/docker/volumes/conf/_data目录和/var/lib/docker/volumes/html/_data目录

这样以来,容器内的confhtml目录就 与宿主机的confhtml目录关联起来,我们称为挂载。此时,我们操作宿主机的/var/lib/docker/volumes/html/_data就是在操作容器内的/usr/share/nginx/html/_data目录。只要我们将静态资源放入宿主机对应目录,就可以被Nginx代理了

数据卷的相关命令有:

注意:容器与数据卷的挂载要在创建容器时配置,而且创建容器的过程中,数据卷会自动创建

nginx的html目录挂载:          

docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx

                                                             数据卷            挂载点

六.挂载本地目录或文件

语法:-v 本地目录:容器内目录或文件

mysql容器本地目录挂载:

  • 挂载/root/mysql/data到容器内的/var/lib/mysql目录

  • 挂载/root/mysql/init到容器内的/docker-entrypoint-initdb.d目录(初始化的SQL脚本录)

  • 挂载/root/mysql/conf到容器内的/etc/mysql/conf.d目录(这个是MySQL配置文件目录)


   

 docker run -d \--name mysql \ -p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \-v ./mysql/data:/var/lib/mysql \-v ./mysql/conf:/etc/mysql/conf.d \-v ./mysql/init:/docker-entrypoint-initdb.d \mysql

七.Docker镜像

镜像:应用程序、程序运行的系统函数库、运行配置等文件的文件包

 

镜像结构图:

Dockerfile:一个文本文件, 其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。将来Docker可以根据Dockerfile帮我们构建镜像。

常见指令:

八.网络

常见命令:

# 1.首先通过命令创建一个网络
docker network create hmall# 2.然后查看网络
docker network ls# 3.让dd和mysql都加入该网络
#网络内的容器可以用容器名互相访问!
# 3.1.mysql容器
docker network connect hmall mysql # 3.2.db容器,也就是我们的java项目
docker network connect hmall dd# 4.进入容器
docker exec -it dd bash# 5.用容器名访问
ping mysqlPING mysql (172.18.0.2) 56(84) bytes of data.64 bytes from mysql.hmall (172.18.0.2): icmp_seq=1 ttl=64 time=0.044 ms64 bytes from mysql.hmall (172.18.0.2): icmp_seq=2 ttl=64 time=0.054 ms

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

外汇天眼:每一个骗局的背后,可能是倾家荡产!

在网络科技还没有发达的以前,骗子主要通过线下揽客的方式推荐各类虚假的投资理财项目,有的甚至打着专门的理财咨询机构吸引了一大批新手投资者。在当时,外汇投资还不为多数人知道,随便忽悠“高利益保本”就有投资者上当受骗。 现如…

flinkcdc 3.0 尝鲜

本文会将从环境搭建到demo来全流程体验flinkcdc 3.0 包含了如下内容 flink1.18 standalone搭建doris 1fe1be 搭建整库数据同步测试各同步场景从检查点重启同步任务 环境搭建 flink环境(Standalone模式) 下载flink 1.18.0 链接 : https://archive.apache.org/dist/flink/flink…

YOLOv8改进 | 主干篇 | 低照度图像增强网络SCINet改进黑暗目标检测(全网独家首发)

一、本文介绍 本文给大家带来的改进机制是低照度图像增强网络SCINet,SCINet(自校正照明网络)是一种专为低光照图像增强设计的框架。它通过级联照明学习过程和权重共享机制来处理图像,优化了照明部分以提升图像质量。我将该网络集成在YOLOv8的主干上针对于图像的输入进行增…

网上训练补题

1.Codeforces Round 920 (Div. 3) A. 简单判断出边长即可 #include <stdio.h> #include <stdlib.h> #include <math.h> int main() {int n;scanf("%d", &n);while (n--){int x, y;scanf("%d%d", &x, &y);int e, f;scanf(&q…

SQL 注入总结(详细)

一、前言 这篇文章是最近学习 SQL 注入后的笔记&#xff0c;里面整理了 SQL 常见的注入方式&#xff0c;供大家学习了解 SQL 注入的原理及方法&#xff0c;也方便后续自己回顾&#xff0c;如有什么错误的地方欢迎指出&#xff01; 二、判断注入类型 按照注入点类型分类 数字型…

【Coding】寒假每日一题Day.5. 互质数的个数

题目来源 题目来自于AcWing平台&#xff1a;https://www.acwing.com/problem/content/4971/ 以blog的形式记录程序设计算法学习的过程&#xff0c;仅做学习记录之用。 题目描述 输入输出格式与数据范围 样例 第一组&#xff1a; 2 516第二组&#xff1a; 12 711943936思路…

SpringMVC(八)处理AJAX请求

一、处理AJAX之准备工作: 首先我们创建一个新的工程: 我们将pom.xml复制过来: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-in…

Excel乱码?教你3个简单解决方法!

“我在编辑一个文件时&#xff0c;Excel突然就乱码了&#xff0c;怎么会这样呢&#xff1f;这个文件对我来说是比较重要的&#xff01;有什么方法可以快速解决吗&#xff1f;” 在处理Excel文件时&#xff0c;我们有时会遇到乱码问题。乱码不仅影响数据的可读性&#xff0c;还可…

华清远见作业第三十一天——网络编程(第六天)

思维导图&#xff1a; 代码&#xff1a; 服务器&#xff1a; #include<stdio.h> #include<string.h> #include<stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <a.h> #define SER_PORT 10000 #define login 1 //登录…

《WebKit 技术内幕》之七(4): 渲染基础

4 WebKit软件渲染技术 4.1 软件渲染过程 在很多情况下&#xff0c;也就是没有那些需要硬件加速内容的时候&#xff08;包括但不限于CSS3 3D变形、CSS3 03D变换、WebGL和视频&#xff09;&#xff0c;WebKit可以使用软件渲染技术来完成页面的绘制工作&#xff08;除非读者强行…

【Redis】Redis如何实现key的过期删除

​ &#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;Redis ⛳️ 功不唐捐&#xff0c;玉汝于成 ​ 目录 前言 正文 结语 我的其他博客 前言 在当今信息时代&#xff0c;数据的快速存储和高效检索成为了软件系统设计中的核心需求。Redis作为…

为什么PostgreSQL如此受追捧?

今天在群里看到一张图&#xff0c; 题目叫为什么PostgreSQL如此受追捧&#xff1f;列举了PG的7大特性&#xff0c;感觉很有意思&#xff0c;实际上在中国PG并没有Mysql流行&#xff0c;但是mysql被oracle收购之后&#xff0c;大家对mysql的发展前景不免有些担心&#xff0c;但是…