云原生之使用Docker部署OneNav个人书签管理器

简介: 云原生之使用Docker部署OneNav个人书签管理器

一、OneNav介绍

1.OneNav简介

OneNav是一款使用PHP + SQLite 3开发的导航/书签管理器,支持Material Design风格,界面简洁,使用方便。

2.OneNav特点

  • 支持后台管理
  • 支持私有链接
  • 支持多种主题风格(默认内置2套模板)
  • 支持链接信息自动识别
  • 支持API
  • 支持右键菜单管理

    二、检查本地docker环境

    1.检查docker版本

    ```bash
    [root@jeven ~]# docker version
    Client: Docker Engine - Community
    Version: 20.10.17
    API version: 1.41
    Go version: go1.17.11
    Git commit: 100c701
    Built: Mon Jun 6 23:05:12 2022
    OS/Arch: linux/amd64
    Context: default
    Experimental: true

Server: Docker Engine - Community
Engine:
Version: 20.10.17
API version: 1.41 (minimum version 1.12)
Go version: go1.17.11
Git commit: a89b842
Built: Mon Jun 6 23:03:33 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.6
GitCommit: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
runc:
Version: 1.1.2
GitCommit: v1.1.2-0-ga916309
docker-init:
Version: 0.19.0
GitCommit: de40ad0


## 2.检查docker状态
```bash
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2022-07-27 08:42:11 CST; 5 months 1 days ago
     Docs: https://docs.docker.com
 Main PID: 9747 (dockerd)
   CGroup: /system.slice/docker.service
           ├─ 9747 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
           ├─59278 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8566 -container-ip 172.19.0.3 -container-port 80...
           └─59284 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 8566 -container-ip 172.19.0.3 -container-port 8080

Dec 27 12:25:58 jeven dockerd[9747]: time="2022-12-27T12:25:58+08:00" level=info msg="Firewalld: docker zone already exis...urning"
Dec 27 12:33:11 jeven dockerd[9747]: time="2022-12-27T12:33:11.097759654+08:00" level=info msg="ignoring event" container...Delete"
Dec 27 12:33:12 jeven dockerd[9747]: time="2022-12-27T12:33:12.392394326+08:00" level=info msg="ignoring event" container...Delete"
Dec 27 12:36:10 jeven dockerd[9747]: time="2022-12-27T12:36:10.759709948+08:00" level=info msg="Firewalld: interface br-5...urning"
Dec 27 12:36:10 jeven dockerd[9747]: time="2022-12-27T12:36:10.879472987+08:00" level=warning msg="IPv4 forwarding is dis... work."
Dec 27 12:36:10 jeven dockerd[9747]: time="2022-12-27T12:36:10.904829465+08:00" level=warning msg="IPv4 forwarding is dis... work."
Dec 27 12:36:10 jeven dockerd[9747]: time="2022-12-27T12:36:10.930135772+08:00" level=warning msg="IPv4 forwarding is dis... work."
Dec 27 12:36:11 jeven dockerd[9747]: time="2022-12-27T12:36:11+08:00" level=info msg="Firewalld: docker zone already exis...urning"
Dec 27 12:36:11 jeven dockerd[9747]: time="2022-12-27T12:36:11.235494624+08:00" level=warning msg="IPv4 forwarding is dis... work."
Dec 27 12:36:11 jeven dockerd[9747]: time="2022-12-27T12:36:11+08:00" level=info msg="Firewalld: docker zone already exis...urning"
Hint: Some lines were ellipsized, use -l to show in full.

三、下载onenav镜像

[root@jeven ~]# docker pull helloz/onenav
Using default tag: latest
latest: Pulling from helloz/onenav
339de151aab4: Pull complete 
4f4fb700ef54: Pull complete 
64e2d91f6a6b: Pull complete 
aedf58cb2c7e: Pull complete 
03e9996f76bb: Pull complete 
16141d74ea3a: Pull complete 
Digest: sha256:da1030a7d0b01f3918f7806eef984f686d3578e4de34d592fb4f956341b6a741
Status: Downloaded newer image for helloz/onenav:latest
docker.io/helloz/onenav:latest

四、部署OneNav应用

1.创建数据目录


[root@jeven ~]# mkdir -p /data/onenav
[root@jeven ~]# cd /data/onenav/
[root@jeven onenav]#

2.创建OneNav容器


[root@jeven onenav]# docker run -d --name="onenav" --restart always -p 8011:80  -e USER='admin' -e PASSWORD='admin'  -v /data/onenav/data:/data/wwwroot/default/data  helloz/onenav
8e43316064d1a938600f1309883fac6b2e63279c9d2fe90fe554eecfd9fda827

3.查看OneNav容器状态

[root@jeven onenav]# docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED          STATUS                        PORTS                                       NAMES
8e43316064d1   helloz/onenav            "/usr/sbin/run.sh"       32 seconds ago   Up 30 seconds                 0.0.0.0:8011->80/tcp, :::8011->80/tcp       onenav

五、访问OneNav首页

image.png

六、访问OneNav后台

1.登录OneNav后台

image.png

2.访问OneNav后台

image.png

相关文章
|
27天前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
341 108
|
16天前
|
运维 Devops 持续交付
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
在企业IT建设中,软件部署常面临效率低、易出错等问题。通过Docker与自动化工具,可实现高效、标准化和可追溯的部署流程,提升企业应用交付效率,降低运维门槛,助力中小企业实现自动化部署。
99 5
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
|
22天前
|
设计模式 Linux 开发工具
Docker部署会吗?
本段内容主要介绍了Docker常用命令、Linux基础指令及日志查看方法,还涉及SpringMVC的执行流程、设计模式与注解,适合用于面试中技术能力的展示。
40 0
|
26天前
|
关系型数据库 MySQL 数据库
为什么 MySQL 不推荐用 Docker 部署?
本文探讨了MySQL是否适合容器化的问题,分析了Docker容器在数据安全、性能瓶颈、状态管理及资源隔离等方面的挑战,并指出目前主流分布式数据库如TDSQL和OceanBase仍倾向于部署在物理机或KVM上。
|
5月前
|
运维 Cloud Native 测试技术
极氪汽车云原生架构落地实践
随着极氪数字业务的飞速发展,背后的 IT 技术也在不断更新迭代。极氪极为重视客户对服务的体验,并将系统稳定性、业务功能的迭代效率、问题的快速定位和解决视为构建核心竞争力的基石。
|
4月前
|
人工智能 Cloud Native 容灾
深圳农商银行三代核心系统全面投产 以云原生架构筑牢数字化转型基石
深圳农商银行完成第三代核心系统全面上云,日均交易超3000万笔,峰值处理效率提升2倍以上。扎根深圳70余年,与阿里云共建“两地三中心”分布式云平台,实现高可用体系及全栈护航。此次云原生转型为行业提供可复制样本,未来将深化云计算与AI合作,推动普惠金融服务升级。
334 17
|
9月前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
197 13
|
4月前
|
存储 Cloud Native 关系型数据库
PolarDB开源:云原生数据库的架构革命
本文围绕开源核心价值、社区运营实践和技术演进路线展开。首先解读存算分离架构的三大突破,包括基于RDMA的分布式存储、计算节点扩展及存储池扩容机制,并强调与MySQL的高兼容性。其次分享阿里巴巴开源治理模式,涵盖技术决策、版本发布和贡献者成长体系,同时展示企业应用案例。最后展望技术路线图,如3.0版本的多写多读架构、智能调优引擎等特性,以及开发者生态建设举措,推荐使用PolarDB-Operator实现高效部署。
241 3
|
9月前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。