旅行追踪和行程规划工具AdventureLog

2024-08-31 20:20

本文主要是介绍旅行追踪和行程规划工具AdventureLog,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

什么是 AdventureLog ?

AdventureLog 是一种记录您的旅行并与世界分享的简单方法。您可以在日志中添加照片、笔记等。跟踪您访问过的国家、探索去过的地区和地方。您还可以查看您的旅行统计数据和里程碑。AdventureLog 旨在成为您终极的旅行伴侣,帮助您记录您的冒险经历并轻松规划新的冒险经历。

主要功能:

  • 使用姓名、日期、地点、描述和评级等字段记录过去的冒险经历。
  • 规划未来在类似领域的冒险。
  • 标记不同的活动类型以便更好地组织。
  • 查看国家、地区并标记访问过的地区。

安装

在群晖上以 Docker 方式安装。

docker-compose.yml

采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: "3.9"services:web:image: ghcr.io/seanmorley15/adventurelog-frontend:latestcontainer_name: adventurelog-webports:- "8130:3000"environment:- PUBLIC_SERVER_URL=http://server:8000- ORIGIN=http://192.168.0.197:8130- BODY_SIZE_LIMIT=Infinitydepends_on:- serverdb:image: postgres:latestcontainer_name: adventurelog-dbvolumes:- ./data:/var/lib/postgresql/data/environment:POSTGRES_DB: databasePOSTGRES_USER: adventurePOSTGRES_PASSWORD: changeme123server:image: ghcr.io/seanmorley15/adventurelog-backend:latestcontainer_name: adventurelog-serverports:- "8131:8000"volumes:- ./media:/code/media/environment:- PGHOST=db- PGDATABASE=database- PGUSER=adventure- PGPASSWORD=changeme123- SECRET_KEY=changeme123- DJANGO_ADMIN_USERNAME=admin- DJANGO_ADMIN_PASSWORD=admin- DJANGO_ADMIN_EMAIL=admin@example.com- PUBLIC_URL='http://192.168.0.197:8132- CSRF_TRUSTED_ORIGINS=http://192.168.0.197:8130,http://192.168.0.197:8131,http://192.168.0.197:8132- DEBUG=False- FRONTEND_URL='http://192.168.0.197:8130'depends_on:- dbnginx:image: nginx:latestcontainer_name: adventurelog-nginxports:- "8132:80" # Using port 8131 to avoid conflict with your existing setupvolumes:- ./media:/app/media- ./nginx.conf:/etc/nginx/conf.d/default.conf:rodepends_on:- server

其中 192.168.0.197 是群晖主机的 IP

数据库的环境变量

名称必需描述
POSTGRES_DB数据库库名
POSTGRES_USER数据库用户
POSTGRES_PASSWORD数据库密码

前端的环境变量

名称必需描述默认值
PUBLIC_SERVER_URL前端 SSR 服务器使用什么来连接到后端。http://server:8000
ORIGIN有时如果使用 HTTPS,则不需要。如果不是,请将其设置为您将从中访问应用程序的域。http://localhost:8080
BODY_SIZE_LIMIT用于设置服务器的最大上传大小。应进行更改以防止有人上传过多!自定义值必须以 kb 为单位设置。Infinity

后端的环境变量

名称必需描述默认值
PGHOST数据库主机。db
PGDATABASE数据库库名。database
PGUSER数据库用户。adventure
PGPASSWORD数据库密码。changeme123
DJANGO_ADMIN_USERNAME默认用户名。admin
DJANGO_ADMIN_PASSWORD默认密码,首次登录后更改。admin
DJANGO_ADMIN_EMAIL默认用户的电子邮件。admin@example.com
PUBLIC_URL这是 nginx 容器的公开可访问 URL 。您应该能够从访问应用程序的此 URL 访问 nginxhttp://127.0.0.1:81
CSRF_TRUSTED_ORIGINS需要更改为您使用后端服务器和前端的地址。这些值以逗号分隔。需要改变。
FRONTEND_URL这是前端容器的公开可访问 URL 。此链接应可供所有用户访问。用于生成电子邮件。http://localhost:3000

以上内容可以在官方文档中找到原版的说明

  • https://github.com/seanmorley15/AdventureLog#frontend-container-web
  • https://docs.adventurelog.app/docs/Installation/docker#frontend-container-web

如果想要禁止注册,可以在环境变量中增加下面的环境变量

environment:  
- DISABLE_REGISTRATION=True  
# OPTIONAL: Set the message to display when registration is disabled  
- DISABLE_REGISTRATION_MESSAGE='Registration is disabled for this instance of AdventureLog.'

DISABLE_REGISTRATION_MESSAGE 为可选项,用于设置禁用注册时显示的消息

nginx.conf

还需要准备一个 nginx.conf,来定义转发规则

server {listen 80;server_name localhost;location /media/ {alias /app/media/;}
}

然后执行下面的命令

# 新建文件夹 adventurelog 和 子目录
mkdir -p /volume1/docker/adventurelog/{data,media}# 进入 adventurelog 目录
cd /volume1/docker/adventurelog# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8130 就能看到主界面

可以注册账号,也可以用环境变量中设置的 admin/admin

登录成功后

点右下角的 +

分为 Visited AdventurePlanned Adventure 两种类型

设置详细信息

保存之后

再多加几个

对了,老苏用的版本是 v0.5.1

参考文档

seanmorley15/AdventureLog: Self-hostable travel tracker and trip planner.
地址:https://github.com/seanmorley15/AdventureLog

Home | AdventureLog
地址:https://adventurelog.app/

Adventure Log | Adventure Log
地址:https://docs.adventurelog.app/

AdventureLog: Self Hosted Travel Tracker and Planner : r/selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/1eswkgd/adventurelog_self_hosted_travel_tracker_and/

这篇关于旅行追踪和行程规划工具AdventureLog的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1124894

相关文章

Java数字转换工具类NumberUtil的使用

《Java数字转换工具类NumberUtil的使用》NumberUtil是一个功能强大的Java工具类,用于处理数字的各种操作,包括数值运算、格式化、随机数生成和数值判断,下面就来介绍一下Number... 目录一、NumberUtil类概述二、主要功能介绍1. 数值运算2. 格式化3. 数值判断4. 随机

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

Java中基于注解的代码生成工具MapStruct映射使用详解

《Java中基于注解的代码生成工具MapStruct映射使用详解》MapStruct作为一个基于注解的代码生成工具,为我们提供了一种更加优雅、高效的解决方案,本文主要为大家介绍了它的具体使用,感兴趣... 目录介绍优缺点优点缺点核心注解及详细使用语法说明@Mapper@Mapping@Mappings@Co

使用Python实现图片和base64转换工具

《使用Python实现图片和base64转换工具》这篇文章主要为大家详细介绍了如何使用Python中的base64模块编写一个工具,可以实现图片和Base64编码之间的转换,感兴趣的小伙伴可以了解下... 简介使用python的base64模块来实现图片和Base64编码之间的转换。可以将图片转换为Bas

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler

Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南

《Rsnapshot怎么用?基于Rsync的强大Linux备份工具使用指南》Rsnapshot不仅可以备份本地文件,还能通过SSH备份远程文件,接下来详细介绍如何安装、配置和使用Rsnaps... Rsnapshot 是一款开源的文件系统快照工具。它结合了 Rsync 和 SSH 的能力,可以帮助你在 li

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

java图像识别工具类(ImageRecognitionUtils)使用实例详解

《java图像识别工具类(ImageRecognitionUtils)使用实例详解》:本文主要介绍如何在Java中使用OpenCV进行图像识别,包括图像加载、预处理、分类、人脸检测和特征提取等步骤... 目录前言1. 图像识别的背景与作用2. 设计目标3. 项目依赖4. 设计与实现 ImageRecogni

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

基于C#实现PDF文件合并工具

《基于C#实现PDF文件合并工具》这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下... 界面主要用于发票PDF文件的合并。经常出差要报销的很有用。代码using System;using System.Col