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

相关文章

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

docker如何删除悬空镜像

《docker如何删除悬空镜像》文章介绍了如何使用Docker命令删除悬空镜像,以提高服务器空间利用率,通过使用dockerimage命令结合filter和awk工具,可以过滤出没有Tag的镜像,并将... 目录docChina编程ker删除悬空镜像前言悬空镜像docker官方提供的方式自定义方式总结docker

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁

Docker集成CI/CD的项目实践

《Docker集成CI/CD的项目实践》本文主要介绍了Docker集成CI/CD的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录一、引言1.1 什么是 CI/CD?1.2 docker 在 CI/CD 中的作用二、Docke

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

禅道Docker安装包发布

禅道Docker安装包发布 大家好, 禅道Docker安装包发布。 一、下载地址 禅道开源版:   /dl/zentao/docker/docker_zentao.zip  备用下载地址:https://download.csdn.net/download/u013490585/16271485 数据库用户名: root,默认密码: 123456。运行时,可以设置 MYSQL_ROOT_P

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体

docker-compose安装和简单使用

本文介绍docker-compose的安装和使用 新版docker已经默认安装了docker-compose 可以使用docker-compose -v 查看docker-compose版本 如果没有的话可以使用以下命令直接安装 sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-c