Docker/Docker-compose以及DockerHub

2023-10-13 04:32
文章标签 docker compose dockerhub

本文主要是介绍Docker/Docker-compose以及DockerHub,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Docker介绍

和虚拟机区别

在这里插入图片描述

主要特性

在这里插入图片描述

DockerFile

Docker相关概念

在这里插入图片描述

dockerfile作用

在这里插入图片描述

在这里插入图片描述

Docker安装

安装地址

官网:
https://github.com/docker/docker-install命令:
下载:curl -fsSL https://get.docker.com -o get-docker.sh
运行:sh get-docker.sh
查看版本: docker --version

在这里插入图片描述

在这里插入图片描述

Docker Compose脚本(指令)安装

https://docs.docker.com/compose/install/

在这里插入图片描述

下载:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose给执行权限:
sudo chmod +x /usr/local/bin/docker-compose查看版本:
docker-compose -v

在这里插入图片描述

Docker创建MongoDB服务

网址:
https://hub.docker.com/下载:
docker pull mongo下载指定版本:
docker pull mongo:4

在这里插入图片描述
历史版本
在这里插入图片描述

在这里插入图片描述

mongo指定版本下载

docker pull mongo:4记得要运行docker:
service docker start

在这里插入图片描述

docker images

查看本地下载镜像
在这里插入图片描述

运行mongo服务

https://hub.docker.com/_/mongo?tab=description&page=3&ordering=last_updateddocker run -d --name some-mongo -p 10050:27017 mongo:4后台运行docker 名字some-mongo 更改端口号10050:27017 

在这里插入图片描述
运行速度特别快---->
在这里插入图片描述

docker ps

查看当前运行服务
在这里插入图片描述

跑在服务器10050端口,映射的是容器里面的的27017端口

放行端口

  • 方式一直接关闭防火墙
    在这里插入图片描述
  • 方式二放行指定端口 10050
    在这里插入图片描述
100050添加到放行规则里面去添加放行规则:
firewall-cmd --zone=public --add-port=10050/tcp --permanent
把10050永久添加到放行如果显示FirewallD is not running:https://blog.csdn.net/qq_44721831/article/details/104123519

Robo 3T验证连接

https://robomongo.org/download

在这里插入图片描述
在这里插入图片描述

Docker操作

先删除之前旧版本(如果没有可以跳过)

sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

安装必须的依赖

安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2


sudo yum install -y yum-utils \device-mapper-persistent-data \lvm2

设置稳定的仓库

// 使用官方源地址(比较慢)sudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo
// 阿里云
sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
// 清华大学源
sudo yum-config-manager \--add-repo \https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

安装 Docker Engine-Community

安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:

sudo yum install docker-ce docker-ce-cli containerd.io

运行docker

systemctl start docker

在这里插入图片描述

docker run hello-world

在这里插入图片描述
在这里插入图片描述

docker ps

docker ps -a
查看运行服务

在这里插入图片描述

Docker中国镜像

通过 Docker 官方镜像加速,中国区用户能够快速访问最流行的 Docker 镜像。该镜像托管于中国大陆,本地用户现在将会享受到更快的下载速度和更强的稳定性,从而能够更敏捷地开发和交付 Docker 化应用。

Docker 中国官方镜像加速可通过 registry.docker-cn.com 访问。该镜像库只包含流行的公有镜像。私有镜像仍需要从美国镜像库中拉取。

您可以使用以下命令直接从该镜像加速地址进行拉取:

$ docker pull registry.docker-cn.com/myname/myrepo:mytag
例如:

$ docker pull registry.docker-cn.com/library/ubuntu:16.04
注: 除非您修改了 Docker 守护进程的 --registry-mirror 参数 (见下文), 否则您将需要完整地指定官方镜像的名称。例如,library/ubuntu、library/redis、library/nginx。

使用 --registry-mirror 配置 Docker 守护进程
您可以配置 Docker 守护进程默认使用 Docker 官方镜像加速。这样您可以默认通过官方镜像加速拉取镜像,而无需在每次拉取时指定 registry.docker-cn.com。

您可以在 Docker 守护进程启动时传入 --registry-mirror 参数:

$ docker --registry-mirror=https://registry.docker-cn.com daemon
为了永久性保留更改,您可以修改 /etc/docker/daemon.json 文件并添加上 registry-mirrors 键值。

{
“registry-mirrors”: [“https://registry.docker-cn.com”]
}
修改保存后重启 Docker 以使配置生效。

vi /etc/docker/daemon.json

{"registry-mirrors": ["https://registry.docker-cn.com"]
}

在这里插入图片描述

ESC :wq

systemctl daemon-reload

systemctl restart docker

重启docker容器

docker rm 容器名称或者id

删除容器
如果容器正在运行中,需要docker stop先停止再删除容器
在这里插入图片描述

docker run --name zero-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

在这里插入图片描述

docker logs -f zero-mysql

-f 持续打印
启动成功到3306
在这里插入图片描述

docker run --name zero-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 28001:3306 -d mysql

在这里插入图片描述

docker logs -f zero-mysql

查看运行日志

docker ps

查看正在运行的服务

测试连接

在这里插入图片描述

在这里插入图片描述

Docker Compose

是docker集合命令的一个工具 不需要一个一个容器docker run

docker-compose up

下载

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

给执行权限

sudo chmod +x /usr/local/bin/docker-compose

查看版本

docker-compose --version

在这里插入图片描述

cd /home/

vi docker-compose.yml

version:'3'
services:   //服务mysql1:   // 服务名称image:myaql  //镜像最新所以不用加..environment:  //环境变量 传递给容器内部,给容器内部用- MYSQL_ROOT_PASSWORD=123456  // root用户的密码ports: // 端口- 28002:3306  // 容器内部服务端口映射到数组机上来 myaql3306映射到数组机8002上来mysql2:image:myaqlenvironment:- MYSQL_ROOT_PASSWORD=123456ports:- 28003:3306version:'3'
services: mysql1: image:myaqlenvironment: - MYSQL_ROOT_PASSWORD=123456ports: - 28002:3306mysql2: image:myaqlenvironment: - MYSQL_ROOT_PASSWORD=123456ports: - 28003:3306// 格式非常重要,否则报错  冒号 - 后面要有空格
version: '3'
services:  mysql1:  image: mysqlenvironment: - MYSQL_ROOT_PASSWORD=123456ports: - 28002:3306mysql2: image: mysqlenvironment: - MYSQL_ROOT_PASSWORD=123456ports: - 28003:3306

docker-compose up -d

docker ps

在这里插入图片描述

docker logs -f home_mysql1_1

查看是否运行起来
在这里插入图片描述

naicat验证

在这里插入图片描述

docker-compose run/start/stop

在这里插入图片描述

docker-compose rm

在这里插入图片描述

Docker仓库

仓库
官方:Docker hub
私有仓库:Harbor

docker login

在这里插入图片描述

docker commit CONTAINERID zerowk2021/mysql:1.0

在这里插入图片描述

docker push zerowk2021/mysql:1.0

在这里插入图片描述
在这里插入图片描述

docker pull zerowk2021/mysql:1.0

另一台机器拉取就可以使用docker-compose run stop …

本地操作

docker build -t zero_blog:1.0 .

在这里插入图片描述
在这里插入图片描述

docker login

在这里插入图片描述

docker commit 047197d6808c zerowk2021/zero_blog:1.0

在这里插入图片描述

docker push zerowk2021/zero_blog:1.0

在这里插入图片描述

远程

docker pull zerowk2021/zero_blog:1.0

在这里插入图片描述

docker images

docker run -itd --name zero_blog -p 12007:80 a97b8118aba5

在这里插入图片描述

这篇关于Docker/Docker-compose以及DockerHub的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/200795

相关文章

Kotlin Compose Button 实现长按监听并实现动画效果(完整代码)

《KotlinComposeButton实现长按监听并实现动画效果(完整代码)》想要实现长按按钮开始录音,松开发送的功能,因此为了实现这些功能就需要自己写一个Button来解决问题,下面小编给大... 目录Button 实现原理1. Surface 的作用(关键)2. InteractionSource3.

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

Docker镜像pull失败两种解决办法小结

《Docker镜像pull失败两种解决办法小结》有时候我们在拉取Docker镜像的过程中会遇到一些问题,:本文主要介绍Docker镜像pull失败两种解决办法的相关资料,文中通过代码介绍的非常详细... 目录docker 镜像 pull 失败解决办法1DrQwWCocker 镜像 pull 失败解决方法2总

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

关于Docker Desktop的WSL报错问题解决办法

《关于DockerDesktop的WSL报错问题解决办法》:本文主要介绍关于DockerDesktop的WSL报错问题解决办法的相关资料,排查发现是因清理%temp%文件夹误删关键WSL文件,... 目录发现问题排查过程:解决方法其实很简单:重装之后再看就能够查到了:最后分享几个排查这类问题的小www.cp

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (