Docker ->(个人学习记录笔记)

@

Docker基本使用

Docker是一个开源的应用容器引擎;是一个轻量级容器技术;

Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;

运行的镜像称为容器,容器启动非常快。

[En]

The running image is called the container, and the container startup is very fast.

Docker ->(个人学习记录笔记)

核心概念

docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);

docker客户端(Client):连接docker主机进行操作;

docker仓库(Registry):用来保存各种打包好的软件镜像;

docker镜像(Images):软件打包好的镜像;放在docker仓库中;

docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用

Docker ->(个人学习记录笔记)

使用Docker的步骤:

  1. 确认要安装docker的系统的linux内核高于 3.10,低于3.10使用 yum update更新
uname -r
  1. 安装docker
yum install docker
  1. 查看docker版本
docker -v
  1. 查看docker状态
service docker status
  1. 启动docker
service docker start
  1. 停止docker
service docker stop
  1. 设置docker开机自启
systemctl enable docker

Docker ->(个人学习记录笔记)

docker常用命令

镜像操作

操作 命令 说明 检索 docker search 关键字 eg:docker search redis 我们经常去docker hub上检索镜像的详细信息,如镜像的TAG。 拉取 docker pull 镜像名:tag :tag是可选的,tag表示标签,多为软件的版本,默认是latest 列表 docker images 查看所有本地镜像 删除 docker rmi image-id 删除指定的本地镜像

Docker ->(个人学习记录笔记)

修改镜像源

修改 /etc/docker/daemon.json ,写入如下内容(如果文件不存在请新建该文件)

vim /etc/docker/daemon.json

# 内容:

{
"registry-mirrors":["http://hub-mirror.c.163.com"]
}

国内镜像源 地址 Docker 官方中国区
https://registry.docker-cn.com

网易
http://hub-mirror.c.163.com

中国科技大学
https://docker.mirrors.ustc.edu.cn

阿里云
https://pee6w651.mirror.aliyuncs.com

Docker ->(个人学习记录笔记)

容器操作

以tomcat为例:

  1. 下载tomcat镜像
docker pull tomcat
  1. 根据镜像启动容器,不加TAG默认latest,如果没有下载latest会先去下载再启动
docker run --name mytomcat -d tomcat:latest

--name:给容器起个名字 -d:后台启动,不加就是前端启动,然后你就只能开一个新的窗口连接,不然就望着黑乎乎的窗口,啥也干不了, Ctrl+C即可退出,当然,容器也会关闭
3. 查看运行中的容器

docker ps
  1. 停止运行中的容器
docker stop  容器的id

或者

docker stop  容器的名称,就是--name给起的哪个名字
  1. 查看所有的容器
docker ps -a
  1. 启动容器
docker start 容器id/名字
  1. 删除一个容器
docker rm 容器id/名字
  1. 启动一个做了端口映射的tomcat
docker run -d -p 8888:8080 tomcat

-d:后台运行 -p: 将主机的端口映射到容器的一个端口 主机端口(8888):容器内部的端口(8080) 外界通过主机的8888端口就可以访问到tomcat,前提是8888端口开放
9. 关闭防火墙

查看防火墙状态
service firewalld status

关闭防火墙
service firewalld stop
  1. 查看容器的日志
docker logs 容器id/名字

Docker ->(个人学习记录笔记)

以mysql为例:

拉取镜像
docker pull mysql:5.7.28

运行mysql容器
 docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.28

--name mysql:容器的名字是mysql;

MYSQL_ROOT_PASSWORD=root:root用户的密码是root (必须指定)

连接容器内mysql

在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:

  • docker attach
  • docker exec:推荐使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。
docker exec -it mysql bash

-i: 交互式操作。 -t: 终端。 mysql: 名为 mysql的镜像。 bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash,也可以用 /bin/bash。 连接上以后就可以正常使用mysql命令操作了

mysql -uroot -proot

直接使用端口映射更加方便

[En]

It is more convenient to use port mapping directly

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.28

Docker ->(个人学习记录笔记)

普通用户运行docker

docker 命令只能由root用户运行,普通用户还需要加上sudo命令。在第三方开发工具中无法使用docker插件

docker守护进程启动的时候,会默认赋予名为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令

安装docker已经创建了docker用户组,只需要将用户加入到docker组即可

sudo gpasswd -a 用户名 docker

Original: https://www.cnblogs.com/Slience-me/p/15481951.html
Author: Slience_me
Title: Docker ->(个人学习记录笔记)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524413/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Linux——基础命令用法(上)

    一、Linux基础命令 1、Linux命令的语法 一条完整的Linux命令的组成部分: 命令 选项 参数 命令:是某个具体的功能 选项:是对函数的修改(通常以-开头,-表示选项的短…

    Linux 2023年5月27日
    072
  • 018.CentOS升级内核

    作者:木二 出处:http://www.cnblogs.com/itzgr/ 关于作者:云计算、虚拟化,Linux,多多交流! 本文版权归作者所有,欢迎转载,但未经作者同意必须保留…

    Linux 2023年6月13日
    0103
  • DHCP欺骗攻击—模拟

    实验拓扑: 基本配置: DHCP服务器配置: 客户端配置: 攻击者配置: 使用云与kail桥接 云: kail虚拟机配置: 为kali linux也添加一张网卡,桥接到VMnet1…

    Linux 2023年6月13日
    088
  • 防数据泄露_MySQL库和数据安全

    攻击场景 外部入侵 内部盗取 防御体系建设 参考 在企业安全建设中有一个方向是防数据泄露,其中一块工作就是保障数据库安全,毕竟这里是数据的源头。当然数据库也分不同的种类,不同类型的…

    Linux 2023年6月6日
    093
  • shell脚本中 /dev/null 的用途

    /dev/null 是一个特殊的设备文件,它丢弃一切写入其中的数据 可以将它 视为一个黑洞, 它等效于只写文件, 写入其中的所有内容都会消失, 尝试从中读取或输出不会有任何结果,同…

    Linux 2023年6月13日
    088
  • MySQL实现 group_concat 排序

    MySQL支持实现group_concat() 内部自定义排序: 实例: 新建一张表 reward,表中数据如下: SQL: SELECT uid, GROUP_CONCAT(mo…

    Linux 2023年6月13日
    0106
  • 冯·诺依曼体系结构

    cpu运算速度>寄存器速度>L1~L3Cache>内存>外设(磁盘)>光盘 外设(输入设备、输出设备)不和cpu直接数据交换 cpu直接和内存数据交换…

    Linux 2023年6月13日
    084
  • 自定义Naive UI的数据表格Data Table中按钮Button图标

    { title: "Action", key: "actions", render(row) { return h( NButton, { …

    Linux 2023年6月8日
    0100
  • POJ1322Chocolate–概论DP

    每次从包装中取出一块巧克力并放在桌子上。如果桌子上有两个相同颜色的巧克力,则将这两个丢掉。如果包中有C种颜色的巧克力(颜色均匀分布),从包装中取出N个巧克力后,桌子上确实有M个巧克…

    Linux 2023年6月7日
    0106
  • Ansible简介

    Ansible 是一种常用的自动运维化工具,基于 python 开发,分布式,无需客户端,轻量级,配置语言采用 YAML。 模块化:调用特定的模块,完成特殊的任务。 2.Param…

    Linux 2023年6月6日
    082
  • KVM虚拟化

    1. 虚拟化介绍 2. 为什么要使用虚拟化技术 3. KVM介绍 4. KVM部署 4.1.开启CPU的虚拟化功能,添加一块新的硬盘用来存储kvm的数据 4.2. 安装kvm 4….

    Linux 2023年6月13日
    098
  • Python环境安装

    一、下载地址: Python:Download Python | Python.org PyCharm:Download PyCharm: Python IDE for Profe…

    Linux 2023年6月13日
    0100
  • 在 IconFont 上获取图标资源的操作方法与感悟

    如何在 IconFont 上获取图标资源 阿里巴巴矢量图标库网站(https://www.iconfont.cn/)上提供了非常丰富的图标资源,包括 SVG、AI、PNG、字体图标…

    Linux 2023年6月7日
    097
  • [极客大挑战 2019]Secret File

    0x01 寻找做题信息 打开环境,查看源代码,发现可疑链接,/Archive_room.php,action.php打开action.php会发生302跳转,查找302跳转无果,百…

    Linux 2023年6月8日
    086
  • Django中自定义管理器Manager用法

    Django中Manager用法 第一种 class create_user(models.Manager): def create(self, name, sex, age): …

    Linux 2023年6月14日
    080
  • Web前端基础精品入门(HTML+CSS+JavaScript+JS)[爱前端]听课笔记(1):网页中的logo的制作

    前边课程没有仔细记录 css 学习笔记 index.html如下: 网页显示 但是我们不需要在网页中显示文字,用如下式样 文字不见,但是搜索引擎还能找到文字 目前高度没有居中,如果…

    Linux 2023年6月14日
    094
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球