Docker【部署 02】可视化工具DockerUI和Shipyard安装使用实例

简介: Docker【部署 02】可视化工具DockerUI和Shipyard安装使用实例

1.DockerUI

1.1 简介

DockerUI是一个易用且轻量化的 Docker 管理工具,透过 Web 界面的操作,更方便对于 Docker 指令不熟悉的用户更快进入 Docker 的世界。

DockerUI拥有易操作化化界面,不须记忆Docker指令,仅需下载镜像即可立刻加入完成部署。基于 Docker 的特性,于 DockerUI 中可以直接更新镜像的版本,使用相同的设置,重新部署并取代原来的容器即可完成升级,使用最新版本的功能。

DockerUI功能覆盖Docker Cli命令行95%以上的命令功能, 通过DockerUI界面里提供的可视化操作功能,轻松的进行Docker环境和Docker Swarm集群环境的管理和维护功能。

DockerUI是一个可视化的Docker容器镜像的图形化管理工具,利用DockerUI可以轻松构建,管理和维护Docker环境。 而且完全开源免费,基于容器化的安装方式,方便高效部署。

https://github.com/gohutool/docker.ui

1.2 安装

# From hub.docker.com
# pull image from hub
docker image pull joinsunsoft/docker.ui
# start container with image, and publish 8999 port to your port
docker container run --rm --name docker.ui -v /var/run/docker.sock:/var/run/docker.sock -p 8999:8999 joinsunsoft/docker.ui

Visit the browser tool

Now, you can visit like as http://hostname:8999

Default Username/Password ginghan/123456

Enjoy it now.

1.3 界面展示

登录界面:

首页:

镜像管理:

1.4 总结

  • 开源且安装简单
  • 中文界面交互友好
  • 可执行的操作全面

2.Shipyard

2.1 简介

Docker Swarm 是 Docker 的集群管理工具。Shipyard基于Docker Swarm而创建,能够管理Docker资源,包括容器、镜像、私有仓库等。

Shipyard与其他管理应用程序的不同之处在于具有可组合性,并与Docker远程API 完全兼容。Shipyard管理集群范围内的容器、镜像、节点、私有仓库,并提供身份验证和基于角色的访问控制。

  • 用户界面

Shipyard提供便于Docker集群管理的用户界面。它可以管理容器、集群镜像、私有仓库、身份验证等。

  • API

Shipyard的核心是API,其Web操作页面最终均使用API实现所有功能。通过使用服务密钥,可以直接与API交互来管理Docker Swarm集群并构建定制集成。

  • Database

RethinkDB用于存储帐户、引擎、服务密钥和元数据信息。它不用于存储关于Docker容器或镜像的任何信息。/data目录作为卷公开。

https://shipyard-project.com/manual-deployment/

2.2 安装

2.2.1 Datastore

As mentioned, Shipyard uses RethinkDB for the datastore. First we will launch a RethinkDB container.

docker run \
    -ti \
    -d \
    --restart=always \
    --name shipyard-rethinkdb \
    rethinkdb

2.2.2 Discovery

To enable Swarm leader election, we must use an external key value store from the Swarm container. For this example, we will use etcd however, you can use any key/value backend supported by Swarm.

docker run \
    -ti \
    -d \
    -p 4001:4001 \
    -p 7001:7001 \
    --restart=always \
    --name shipyard-discovery \
    microbox/etcd -name discovery

2.2.3 Proxy

By default, the Docker Engine only listens on a socket. We could re-configure the Engine to use TLS or you can use a proxy container. This is a very lightweight container that simply forwards requests from TCP to the Unix socket that Docker listens on.

Note: You do not need this if you are using a manual TCP / TLS configuration.

docker run \
    -ti \
    -d \
    -p 2375:2375 \
    --hostname=$HOSTNAME \
    --restart=always \
    --name shipyard-proxy \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -e PORT=2375 \
    shipyard/docker-proxy:latest

2.2.4 Swarm Manager

This will run a Swarm container configured to manage.

# 格式
docker run \
    -ti \
    -d \
    --restart=always \
    --name shipyard-swarm-manager \
    swarm:latest \
    manage --host tcp://0.0.0.0:3375 etcd://<IP-OF-HOST>:4001
# 实例
docker run \
    -ti \
    -d \
    --restart=always \
    --name shipyard-swarm-manager \
    swarm:latest \
    manage --host tcp://0.0.0.0:3375 etcd://172.17.0.8:4001

2.2.5 Swarm Agent

官网的坑:

This will run a Swarm container configured to manage.

# 格式
docker run \
    -ti \
    -d \
    --name shipyard-swarm-agent docker.io/swarm join \
    --addr [IP-OF-HOST]:[LOCAL-DOCKER-PORT] etcd://[IP-OF-ETCD-HOST]:4001
# 实例
docker run \
    -ti \
    -d \
    --name shipyard-swarm-agent swarm join \
    --addr 172.17.0.8:2375 etcd://172.17.0.8:4001

2.2.6 Controller

This runs the Shipyard Controller.

docker run \
    -ti \
    -d \
    --restart=always \
    --name shipyard-controller \
    --link shipyard-rethinkdb:rethinkdb \
    --link shipyard-swarm-manager:swarm \
    -p 8080:8080 \
    shipyard/shipyard:latest \
    server \
    -d tcp://swarm:3375

Once the controller is launched and the controller has initialized the datastore you should be able to login via http://[ip-of-host]:8080. User:admin Password:shipyard

2.3 界面展示

登录:

容器管理:

2.4 总结

  • 安装步骤较多
  • 英文界面不算友好
  • 官网有坑
目录
相关文章
|
25天前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
335 108
|
14天前
|
运维 Devops 持续交付
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
在企业IT建设中,软件部署常面临效率低、易出错等问题。通过Docker与自动化工具,可实现高效、标准化和可追溯的部署流程,提升企业应用交付效率,降低运维门槛,助力中小企业实现自动化部署。
89 5
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
|
20天前
|
设计模式 Linux 开发工具
Docker部署会吗?
本段内容主要介绍了Docker常用命令、Linux基础指令及日志查看方法,还涉及SpringMVC的执行流程、设计模式与注解,适合用于面试中技术能力的展示。
38 0
|
24天前
|
关系型数据库 MySQL 数据库
为什么 MySQL 不推荐用 Docker 部署?
本文探讨了MySQL是否适合容器化的问题,分析了Docker容器在数据安全、性能瓶颈、状态管理及资源隔离等方面的挑战,并指出目前主流分布式数据库如TDSQL和OceanBase仍倾向于部署在物理机或KVM上。
|
Java 测试技术 Docker
让Docker日臻完善的8个优秀工具
一眨眼,你可能错过如今Docker领域最值得关注的动向之一。除了Docker本身的进步外,其他许多实用的项目都建立在Docker的基础上,或者得到Docker的支持。
1353 0
|
2月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
189 57
|
3月前
|
存储 运维 安全
Docker化运维:容器部署的实践指南
Docker化运维:容器部署的实践指南
|
2月前
|
存储 监控 Java
如何对迁移到Docker容器中的应用进行性能优化?
如何对迁移到Docker容器中的应用进行性能优化?
201 58
|
2月前
|
NoSQL Redis Docker
使用Docker Compose工具进行容器编排的教程
以上就是使用Docker Compose进行容器编排的基础操作。这能帮你更有效地在本地或者在服务器上部署和管理多容器应用。
259 11