微服架构基础设施环境平台搭建 -(五)Docker常用命令

这篇具有很好参考价值的文章主要介绍了微服架构基础设施环境平台搭建 -(五)Docker常用命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微服架构基础设施环境平台搭建 -(五)Docker常用命令

本文主要列出了Docker常用的命令

微服架构基础设施环境平台搭建 系列文章


微服架构基础设施环境平台搭建 -(一)基础环境准备
微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建
微服架构基础设施环境平台搭建 -(三)Docker+Kubernetes集群搭建
微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台
微服架构基础设施环境平台搭建 -(五)Docker常用命令

一、Docker命令

下面是关与Docker常用命令,与当前部署操作无关,不需要在服务器上执行,不需要了解的可以跳过


1、重启docker服务

systemctl restart docker

2、Docker镜像操作命令

# 下载镜像
docker pull name:tag

# 查看本地已下载
docker images

# 删除镜像
docker rmi imageId

# 镜像busybox工具
docker run -it --name test-nginx2 busybox sh
docker run -it --name test-nginx2 --link test-nginx busybox sh

3、Docker端口操作命令

# 容器端口映射
docker run --name test-nginx -d -p 8080:80 nginx
# 主机网络映射,将容器的所有端口全部映射到宿主机,此方法未做宿主机与容器隔离
docker run --rm --network host --name test-nginx2 nginx

说明:


端口映射
-p [宿主机端口]:[容器里的端口],例如: -p 8080:80
-p [宿主机起始端口-宿主机结束端口]:[容器里的起始端口-容器里的结束端口],例如: -p 80-90:80-90
–rm 参数是容器退出后自动删除

4、Docker挂载操作

docker run --name test-nginx2 -d -p 8081:80 -v /data:/usr/share/nginx/html nginx

说明:


目录映射参数
-v [宿主机目录]:[容器里的目录]

5、Docker日志操作

docker logs -f test-nginx

说明:


实时输出Docker容器的日志
docker logs -f 容器ID

6、Docker容器操作

# 查看本地docker容器
docker ps -a

# 如果已经创建或通过docker run --name [容器名称] [镜像名称]启动容器而创建成功容器后,后来容器被停止后想要再重启该容器执行下面命令
# 命令格式: docker start [容器名称]/[容器ID]
docker start test-nginx
docker restart test-nginx

# 查看docker详细信息,包括网络
docker inspect test-nginx

# 进入容器执行命令
docker exec -it test-nginx sh

# 删除容器
docker rm -f test-nginx

说明:


-i 标准输入
-t 终端


二、docker-compose命令

相关操作


# 进入容器执行命令
# 构建镜像
docker-compose build .

# 启动服务
docker-compose up -d

# 停止服务、删除所有的镜像
docker-compose down --rmi all -v

# 查看日志
docker-compose logs -f

三、与镜像仓库相关命令

相关操作


# 登录
docker login 192.168.2.146

# 上传至Harbor公开仓库
docker tag nginx:latest 192.168.2.146/pub/nginx:0.0.1
docker push 192.168.2.146/pub/nginx:0.0.1

# 上传至Harbor私有仓库
# 私有仓库的上传和下载都需要先登录,公有库只有上传需要先登录
docker tag mysql:5.7 192.168.2.146/prv/mysql:0.0.1
docker push 192.168.1.146/prv/mysql:0.0.1

# 退出Harbor
docker loginout 192.168.1.146

四、Dockerfile

1、Dockerfile文件

# 制作base image 基础镜像,尽量使用官方的image作为基础镜像
FROM moxm/java:1.8-full

# 容器元信息,帮助信息,类似于注释
LABEL version="1.0"
LABEL maintainer="作者"

# 执行系统命令,每个RUN都会使镜像增加一层,所以要避免无用的分层,多条命令用反斜线换行,合成一条命令
RUN yum update && yum install -y vim \
    nginx

# 改变目录,相当于cd命令,如果目录不存在会自动创建并改变为当前目录
WORKDIR /test

# ADDCOPY要优先使用COPYADD除了复制的功能还有解压功能
# 将当前目录的app.tar.gz添加到容器/test/目录下,并解压
ADD app.tar.gz /test
# 将当前目录下复制到容器/test/目录下
COPY app.jar /test 

# 环境变量,设置一个mysql的常量
ENV MYSQL_VERSION 5.7

# 声明容器对外暴露8080端口
EXPOSE 8080

2、Docker镜像编译命令

# 执行当前目录下的Dockerfile中的编译执令,并输出为Docker镜像,名称为-t参数指定的名称
docker build -t 镜像名称 .

五、将官方mysql镜像参数修改后重新构建成新的镜像

1、下载mysql镜像

# 下载mysql5.7官方镜像
docker pull mysql:5.7
# 显示本地的所有镜像
docker images

微服架构基础设施环境平台搭建 -(五)Docker常用命令

2、启动镜像

# 启动mysql:5.7镜像,并以名称为“mysql_5.7”的容器运行
# 将容器的3306的端口映射到宿主机的3306端口
# 将容器的/var/lib/mysql(mysql在容器中的数据文件存放目录)
docker run -itd --name mysql_5.7 -p 3306:3306 -v /nfsdata/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

# 查看当前系统中正在运行的容器
docker ps -a

微服架构基础设施环境平台搭建 -(五)Docker常用命令

3、配置mysql参数

cat > my.cnf << EOF
[client] 
default-character-set=utf8mb4

[mysql]
port = 3306
default-character-set=utf8mb4
 
[mysqld]
port = 3306
default_storage_engine=InnoDB
datadir = /var/lib/mysql
character-set-client-handshake = FALSE
character-set-server=utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
max_connections = 2000
max_allowed_packet = 128M
innodb_file_per_table = 1
tmp_table_size = 134217728
max_heap_table_size = 134217728

lower_case_table_names=1

log-bin = mysql-bin
max_binlog_size = 1024M
expire_logs_days = 1
log_slave_updates = 1
server-id = 1

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
EOF

4、将my.cnf上传到mysql_5.7容器中

# 将my.cnf上传到mysql_5.7容器中
docker cp my.cnf mysql_5.7:/etc/my.cnf

# 进入容器mysql_5.7的命令行
docker exec -it mysql_5.7 sh
# 查看my.cnf是否修改成功
cat /etc/my.cnf

微服架构基础设施环境平台搭建 -(五)Docker常用命令

5、重新构建新的mysql镜像文件

# 停止正在运行中的容器mysql_5.7
docker stop mysql_5.7
# 查看容器mysql_5.7的状态
docker ps -a

# 将一个容器进行提交成一个新的镜像副本
# docker commit -m="描述信息" -a="作者" 容器id 目标镜像名:[TAG]
docker commit mysql_5.7 hxyl_mysql:5.7
docker images

微服架构基础设施环境平台搭建 -(五)Docker常用命令

6、重新启动新的镜像

# 启动hxyl_mysql:5.7镜像,并以名称为“hxyl_mysql_5.7”的容器运行
# 将容器的3306的端口映射到宿主机的3306端口
# 将容器的/var/lib/mysql(mysql在容器中的数据文件存放目录)
docker run -itd --name hxyl_mysql_5.7 -p 3306:3306 -v /nfsdata/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 hxyl_mysql:5.7

微服架构基础设施环境平台搭建 -(五)Docker常用命令
微服架构基础设施环境平台搭建 -(五)Docker常用命令

6、将打包的hxyl_mysql:5.7镜像上传Harbor私仓

说明:
关与Docker镜像私仓Harbor的搭建请参见
微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建

# 登录Harbor私仓
docker login 192.168.2.146

# 将hxyl_mysql:5.7上传至Harbor
docker tag hxyl_mysql:5.7 192.168.2.146/pub/hxyl_mysql:5.7
docker push 192.168.2.146/pub/hxyl_mysql:5.7

# 退出登录Harbor
docker logout 192.168.2.146

微服架构基础设施环境平台搭建 -(五)Docker常用命令
微服架构基础设施环境平台搭建 -(五)Docker常用命令文章来源地址https://www.toymoban.com/news/detail-443849.html

到了这里,关于微服架构基础设施环境平台搭建 -(五)Docker常用命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 架构设计基础设施保障IaaS之计算篇

    1.1 IaaS概述 IaaS(Infrastructure as a Service )提供托管的 IT 基础架构,供用户调配处理能力、存储、网络和其他基础计算资源。IaaS 提供商运行并管理此基础架构,用户可以在此基础架构上运行选择的操作系统和应用程序软件。 在云平台中还会涉及以下概念: PaaS:平台即服务。

    2024年02月01日
    浏览(51)
  • 大数据基础设施搭建 - Redis

    redis是用c写的,因此安装redis需要c语言的编译环境,即需要安装gcc 内容: key:string value:string、list、set、zset、hash 有序可重复 无序不重复 有序不重复,就是在set的基础上,给每个元素绑定了一个分数,按照分数由低到高排序 RDB为快照备份,会在备份时将内存中的所有数据

    2024年01月23日
    浏览(39)
  • 大数据基础设施搭建 - Spark

    内容: 到YARN WEB页面查看任务提交情况 内容: 4.3.1 启动SparkSQL客户端(Yarn方式) 4.3.2 启动Hive客户端 优势在哪里??

    2024年04月09日
    浏览(50)
  • 大数据基础设施搭建 - Hbase

    首先保证Zookeeper和Hadoop正常运行 新增内容: 使环境变量生效: 不使用hbase内置的zookeeper,使用独立zookeeper 内容: 表明zookeeper集群,hbase web访问路径 内容: regionserver所在机器 内容: 8.3.1 创建表 在first_namespace命名空间中创建表格student,两个列族。info列族数据维护的版本数

    2024年01月24日
    浏览(55)
  • 内外统一的边缘原生云基础设施架构——火山引擎边缘云

    近日,火山引擎边缘云边缘计算架构师郭少巍在LiveVideoStack Con 2023上海站围绕火山引擎边缘云海量分布式节点和上百T带宽,结合边缘计算在云基础设施架构方面带来的挑战,分享了 面对海量数据新的应用形态对低时延和分布式架构的需求 ,边缘计算将成为新一代边缘计算云

    2024年02月08日
    浏览(41)
  • 质量基础设施“一站式”服务平台建设,NQI系统开发方案

    质量基础设施“一站式”服务平台建设,综合运用计量、标准、认证、特种设备、产品质量、知识产权等各项职能,通过平台服务、精准服务、专家服务、嵌入式服务等手段,助力产业提质升级做大做强。 质量基础设施“一站式”服务平台建设解决方案: 一、全业务一站线

    2024年02月12日
    浏览(47)
  • [3]云计算概念、技术与架构Thomas Erl-第7章 云基础设施机制

    技术机制是指在IT行业内确立的具有明确定义的IT构件,它通常区别于具体的计算模型或平台。云计算具有以技术为中心的特点,这就需要建立一套正式机制作为探索云技术架构的基础。云基础设施机制是云环境的基础构建块,它是形成基本云技术架构基础的主要构件。 本文

    2024年02月02日
    浏览(64)
  • 架构师核心-云计算&云上实战(云计算基础、云服务器ECS、云设施实战、云上高并发Web架构)

    阿里云 云计算岗位一般的要求是: 1、常见操作系统的使用与Linux命令行、Shell脚本 2、云计算基础:包括虚拟化技术、云存储、云安全等。 3、网络: 包括NAT、TCP/IP 4、Docker云原生K8S 5、开发环境搭建与部署 6、微服务、DevOps与云原生监控 7、故障排除、日志分析、变更管理 1.

    2024年04月23日
    浏览(56)
  • 云计算是指利用互联网所提供的基础设施、网络服务和平台,实现数据中心的虚拟化、动态管理、自动化运维功能

    作者:禅与计算机程序设计艺术 云计算是指利用互联网所提供的基础设施、网络服务和平台,实现数据中心的虚拟化、动态管理、自动化运维功能。传统的数据中心的资源由专业IT人员手动管理,而云计算则让硬件资源可按需弹性扩展、弹性迁移、自动化伸缩、降低成本。

    2024年02月08日
    浏览(53)
  • 网络基础设施 & 拥塞控制

    我经常说,传统的 TCP 优化已经到顶,不会有大意义了,这有两方面意思。 一方面,内在的,TCP 的 ACK 时钟带回的信息就那么多,用足了又能怎样。一个学习最差的差生能控制的分数是是 0~100 分的区间,宽度足足 100 分,他控制不了自己能考多少分,而一个学习最好的学生

    2024年02月02日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包