Docker 环境搭建和运维

简介: 1、docker安装2、镜像制作3、镜像站搭建4、docker部署

1、docker安装

2、镜像制作
构建镜像有两种方式:

docker build -t quality-dataadapter:v2.4 ./

A、Dockerfile:

RROM openjdk:8
ADD ["quality-dataadapter-1.0-SNAPSHOT.jar", "/quality-dataadapter.jar"]
EXPOSE 26001
ENTRYPOINT ["java","-jar","-Duser.timezone=GMT+8","-Dfile.encoding=UTF-8","-Dquality.db.path=/config","-Dspring.config.file:./config/","-Dspring.profiles.active=dev","/quality-dataadapter.jar"]

FROM 构建镜像的起点镜像
ADD 增加文件到镜像中, 第一个参数为当前系统中的文件,第二个参数是制作成镜像的文件局对路径
EXPOSE 暴露的端口
ENTRYPOINT 容器启动后,第一个运行的程序

B、容器commit:

docker commit -m "配置环境完成" -a "jDK8 版本" 0b2r16ace5tm quality-dataadapter:v2.4

-m 来指定提交的说明信息,跟我们使用的版本控制工具一样;-a 可以指定更新的用户信息;之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。

3、镜像站搭建

4、docker部署
1、获取镜像包

docker save -o dockerPackage.tar  dockerContainer:v2.4

2、将镜像包导入到本地仓库

docker load --input dockerPackage.tar 或 docker load < dockerPackage.tar

3、启动容器

docker run -d --name quality-adapter  -p 26001:26001 -v /docker/adapter/config:/config -v /docker/adapter/logs:/logs -v /app:/app quality-dataadapter:V2.4

--name 启动的容器名
-p 容器端口与宿主机端口的映射 前面那个是宿主机端口,后面那个是容器端口
-v 将容器路径挂在到宿主机上,前一个参数为宿主机路径,后一个为容器的路径
此处有一个个人经验,如果容器启动后又迅速关闭,那么容器启动是执行的进程必定是有问题。此时最好的办法是,在打镜像时,ENTRYPOINT设置为top指令,在启动容器时,使用-dit指令,则可以启动容器后通过top指令将容器挂起。然后进入容器,排查启动指令在哪一步出现问题。
4、进入docker

 docker exec -it 0b2r16ace5tm  /bin/bash

--it 容器id

5、管理镜像仓库中的镜像

查看镜像仓库中的镜像
  docker images
删除镜像
  docker rmi ab2r16rcevtm   镜像id

目录
相关文章
|
4月前
|
运维 监控 Docker
构建高效微服务架构:从理论到实践构建高效自动化运维体系:Ansible与Docker的完美融合
【5月更文挑战第31天】 在当今软件开发的世界中,微服务架构已经成为了实现可伸缩、灵活且容错的系统的关键策略。本文将深入探讨如何从零开始构建一个高效的微服务系统,涵盖从概念理解、设计原则到具体实施步骤。我们将重点讨论微服务设计的最佳实践、常用的技术栈选择、以及如何克服常见的挑战,包括服务划分、数据一致性、服务发现和网络通信等。通过实际案例分析,本文旨在为开发者提供一套实用的指南,帮助他们构建出既健壮又易于维护的微服务系统。
|
25天前
|
运维 开发者 Docker
Docker容器化技术在运维中的应用实践
【8月更文挑战第27天】本文旨在探讨Docker容器化技术如何在现代运维工作中发挥核心作用,通过深入浅出的方式介绍Docker的基本概念、优势以及实际应用场景。文章将结合具体案例,展示如何利用Docker简化部署流程、提高资源利用率和加强应用的可移植性。读者将获得对Docker容器技术在实际运维中应用的全面认识,并能够理解其在提升运维效率与质量方面的重要性。
|
1月前
|
应用服务中间件 网络安全 nginx
运维专题.Docker+Nginx服务器的SSL证书安装
运维专题.Docker+Nginx服务器的SSL证书安装
43 3
|
1月前
|
运维 监控 持续交付
构建高效自动化运维体系:Ansible与Docker的协同实践
【7月更文挑战第42天】 在当今快速发展的云计算和微服务架构时代,自动化运维已成为提升效率、确保系统稳定性的关键。本文将探讨如何利用Ansible这一强大的自动化工具与Docker容器技术相结合,搭建一个高效、可靠的自动化运维体系。文章首先简述了自动化运维的必要性和Ansible与Docker的基本概念,随后详细介绍了两者结合的优势,并通过实际案例分析展示了如何实现自动化部署、管理和扩展应用服务。通过阅读本文,读者将获得一套可行的自动化运维解决方案,以应对日益复杂的IT环境挑战。
|
1月前
|
运维 监控 数据可视化
"揭秘Docker管理神器Portainer:一键解锁Docker可视化管理新境界,让你的运维工作轻松又高效!"
【8月更文挑战第11天】Docker简化了应用部署与管理,但容器规模增大时,高效管理变得挑战重重。Portainer作为轻量级Docker管理工具,以直观界面和全面功能脱颖而出。它不仅简化了容器的创建、监控与操作,还涵盖了镜像、网络、卷管理及用户权限控制。Portainer易于部署,兼容单机与Swarm集群,降低学习门槛。本文深度剖析Portainer优势,并通过实例展示其实用性,使读者对其功能与价值有深刻理解。
47 3
|
1月前
|
存储 运维 Linux
运维系列.在Docker中使用Grafana(一)
运维系列.在Docker中使用Grafana(一)
42 5
|
1月前
|
存储 Linux 数据库
运维系列.在Docker中使用Grafana(二)
运维系列.在Docker中使用Grafana(二)
40 4
|
1月前
|
运维 Shell Linux
运维专题.Docker功能权限(Capabilities)管理和查看
运维专题.Docker功能权限(Capabilities)管理和查看
46 1
|
2月前
|
Kubernetes Cloud Native 持续交付
云原生架构的核心组成部分通常包括容器化(如Docker)、容器编排(如Kubernetes)、微服务架构、服务网格、持续集成/持续部署(CI/CD)、自动化运维(如Prometheus监控和Grafana可视化)等。
云原生架构的核心组成部分通常包括容器化(如Docker)、容器编排(如Kubernetes)、微服务架构、服务网格、持续集成/持续部署(CI/CD)、自动化运维(如Prometheus监控和Grafana可视化)等。
|
2月前
|
Ubuntu Linux Docker
Java演进问题之Alpine Linux创建更小的Docker镜像如何解决
Java演进问题之Alpine Linux创建更小的Docker镜像如何解决