service: meilisearch
This commit is contained in:
parent
2c2d74c0d6
commit
c6557eada8
@ -22,79 +22,19 @@ class DockerCompose extends Component
|
|||||||
$this->query = request()->query();
|
$this->query = request()->query();
|
||||||
if (isDev()) {
|
if (isDev()) {
|
||||||
$this->dockerComposeRaw = 'services:
|
$this->dockerComposeRaw = 'services:
|
||||||
ghost:
|
appsmith:
|
||||||
image: ghost:5
|
build:
|
||||||
volumes:
|
context: .
|
||||||
- ~/configs:/etc/configs/:ro
|
dockerfile_inline: |
|
||||||
- ./var/lib/ghost/content:/tmp/ghost2/content:ro
|
FROM nginx
|
||||||
- /var/lib/ghost/content:/tmp/ghost/content:rw
|
ARG GIT_COMMIT
|
||||||
- ghost-content-data:/var/lib/ghost/content
|
ARG GIT_BRANCH
|
||||||
- type: volume
|
RUN echo "Hello World ${GIT_COMMIT} ${GIT_BRANCH}"
|
||||||
source: mydata
|
args:
|
||||||
target: /data
|
- GIT_COMMIT=cdc3b19
|
||||||
- type: bind
|
- GIT_BRANCH=${GIT_BRANCH}
|
||||||
source: ./var/lib/ghost/data
|
|
||||||
target: /data
|
|
||||||
- type: bind
|
|
||||||
source: /tmp
|
|
||||||
target: /tmp
|
|
||||||
labels:
|
|
||||||
- "test.label=true"
|
|
||||||
ports:
|
|
||||||
- "3000"
|
|
||||||
- "3000-3005"
|
|
||||||
- "8000:8000"
|
|
||||||
- "9090-9091:8080-8081"
|
|
||||||
- "49100:22"
|
|
||||||
- "127.0.0.1:8001:8001"
|
|
||||||
- "127.0.0.1:5000-5010:5000-5010"
|
|
||||||
- "127.0.0.1::5000"
|
|
||||||
- "6060:6060/udp"
|
|
||||||
- "12400-12500:1240"
|
|
||||||
- target: 80
|
|
||||||
published: 8080
|
|
||||||
protocol: tcp
|
|
||||||
mode: host
|
|
||||||
networks:
|
|
||||||
- some-network
|
|
||||||
- other-network
|
|
||||||
environment:
|
environment:
|
||||||
- database__client=${DATABASE_CLIENT:-mysql}
|
- APPSMITH_MAIL_ENABLED=${APPSMITH_MAIL_ENABLED}
|
||||||
- database__connection__database=${MYSQL_DATABASE:-ghost}
|
|
||||||
- database__connection__host=${DATABASE_CONNECTION_HOST:-mysql}
|
|
||||||
- test=${TEST:?true}
|
|
||||||
- url=$SERVICE_FQDN_GHOST
|
|
||||||
- database__connection__user=$SERVICE_USER_MYSQL
|
|
||||||
- database__connection__password=$SERVICE_PASSWORD_MYSQL
|
|
||||||
depends_on:
|
|
||||||
- mysql
|
|
||||||
mysql:
|
|
||||||
image: mysql:8.0
|
|
||||||
volumes:
|
|
||||||
- ghost-mysql-data:/var/lib/mysql
|
|
||||||
environment:
|
|
||||||
- MYSQL_USER=${SERVICE_USER_MYSQL}
|
|
||||||
- MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL}
|
|
||||||
- MYSQL_DATABASE=$MYSQL_DATABASE
|
|
||||||
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}
|
|
||||||
- SESSION_SECRET
|
|
||||||
minio:
|
|
||||||
image: minio/minio
|
|
||||||
environment:
|
|
||||||
RACK_ENV: development
|
|
||||||
A: $A
|
|
||||||
SHOW: ${SHOW}
|
|
||||||
SHOW1: ${SHOW2-show1}
|
|
||||||
SHOW2: ${SHOW3:-show2}
|
|
||||||
SHOW3: ${SHOW4?show3}
|
|
||||||
SHOW4: ${SHOW5:?show4}
|
|
||||||
SHOW5: ${SERVICE_USER_MINIO}
|
|
||||||
SHOW6: ${SERVICE_PASSWORD_MINIO}
|
|
||||||
SHOW7: ${SERVICE_PASSWORD_64_MINIO}
|
|
||||||
SHOW8: ${SERVICE_BASE64_64_MINIO}
|
|
||||||
SHOW9: ${SERVICE_BASE64_128_MINIO}
|
|
||||||
SHOW10: ${SERVICE_BASE64_MINIO}
|
|
||||||
SHOW11:
|
|
||||||
';
|
';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -131,6 +131,20 @@ class Service extends BaseModel
|
|||||||
}
|
}
|
||||||
$fields->put('Weblate', $data);
|
$fields->put('Weblate', $data);
|
||||||
break;
|
break;
|
||||||
|
case str($image)?->contains('meilisearch'):
|
||||||
|
$data = collect([]);
|
||||||
|
$SERVICE_PASSWORD_MEILISEARCH = $this->environment_variables()->where('key', 'SERVICE_PASSWORD_MEILISEARCH')->first();
|
||||||
|
if ($SERVICE_PASSWORD_MEILISEARCH) {
|
||||||
|
$data = $data->merge([
|
||||||
|
'API Key' => [
|
||||||
|
'key' => data_get($SERVICE_PASSWORD_MEILISEARCH, 'key'),
|
||||||
|
'value' => data_get($SERVICE_PASSWORD_MEILISEARCH, 'value'),
|
||||||
|
'isPassword' => true,
|
||||||
|
],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
$fields->put('Meilisearch', $data);
|
||||||
|
break;
|
||||||
case str($image)?->contains('ghost'):
|
case str($image)?->contains('ghost'):
|
||||||
$data = collect([]);
|
$data = collect([]);
|
||||||
$MAIL_OPTIONS_AUTH_PASS = $this->environment_variables()->where('key', 'MAIL_OPTIONS_AUTH_PASS')->first();
|
$MAIL_OPTIONS_AUTH_PASS = $this->environment_variables()->where('key', 'MAIL_OPTIONS_AUTH_PASS')->first();
|
||||||
@ -193,6 +207,7 @@ class Service extends BaseModel
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
ray($fields);
|
||||||
$databases = $this->databases()->get();
|
$databases = $this->databases()->get();
|
||||||
|
|
||||||
foreach ($databases as $database) {
|
foreach ($databases as $database) {
|
||||||
|
@ -9,6 +9,7 @@
|
|||||||
helper="See details in our <a target='_blank' class='text-white underline' href='https://coolify.io/docs/api-authentication'>documentation</a>."
|
helper="See details in our <a target='_blank' class='text-white underline' href='https://coolify.io/docs/api-authentication'>documentation</a>."
|
||||||
label="Deploy Webhook (auth required)" id="deploywebhook"></x-forms.input>
|
label="Deploy Webhook (auth required)" id="deploywebhook"></x-forms.input>
|
||||||
</div>
|
</div>
|
||||||
|
@if ($resource->type() !== 'service')
|
||||||
<div>
|
<div>
|
||||||
<h3>Manual Git Webhooks</h3>
|
<h3>Manual Git Webhooks</h3>
|
||||||
@if ($githubManualWebhook && $gitlabManualWebhook)
|
@if ($githubManualWebhook && $gitlabManualWebhook)
|
||||||
@ -38,4 +39,6 @@
|
|||||||
You are using an official Git App. You do not need manual webhooks.
|
You are using an official Git App. You do not need manual webhooks.
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
19
templates/compose/meilisearch.yaml
Normal file
19
templates/compose/meilisearch.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
# documentation: https://www.meilisearch.com/docs/learn/configuration/instance_options
|
||||||
|
# slogan: MeiliSearch is a powerful, fast, open-source, easy to use and deploy search engine.
|
||||||
|
# tags: search,engine,fulltext,full,text,meilisearch
|
||||||
|
|
||||||
|
services:
|
||||||
|
meilisearch:
|
||||||
|
image: getmeili/meilisearch:latest
|
||||||
|
environment:
|
||||||
|
- SERVICE_FQDN_MEILISEARCH
|
||||||
|
- MEILI_NO_ANALYTICS=${MEILI_NO_ANALYTICS:-true}
|
||||||
|
- MEILI_ENV=${MEILI_ENV:-production}
|
||||||
|
- MEILI_MASTER_KEY=${SERVICE_PASSWORD_MEILISEARCH}
|
||||||
|
volumes:
|
||||||
|
- meilisearch-data:/meili_data
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "curl", "-f", "http://localhost:7700/health"]
|
||||||
|
interval: 2s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 15
|
@ -304,6 +304,19 @@
|
|||||||
"low-code"
|
"low-code"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"meilisearch": {
|
||||||
|
"documentation": "https:\/\/www.meilisearch.com\/docs\/learn\/configuration\/instance_options",
|
||||||
|
"slogan": "MeiliSearch is a powerful, fast, open-source, easy to use and deploy search engine.",
|
||||||
|
"compose": "c2VydmljZXM6CiAgbWVpbGlzZWFyY2g6CiAgICBpbWFnZTogJ2dldG1laWxpL21laWxpc2VhcmNoOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9NRUlMSVNFQVJDSAogICAgICAtICdNRUlMSV9OT19BTkFMWVRJQ1M9JHtNRUlMSV9OT19BTkFMWVRJQ1M6LXRydWV9JwogICAgICAtICdNRUlMSV9FTlY9JHtNRUlMSV9FTlY6LXByb2R1Y3Rpb259JwogICAgICAtICdNRUlMSV9NQVNURVJfS0VZPSR7U0VSVklDRV9QQVNTV09SRF9NRUlMSVNFQVJDSH0nCiAgICB2b2x1bWVzOgogICAgICAtICdtZWlsaXNlYXJjaC1kYXRhOi9tZWlsaV9kYXRhJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vbG9jYWxob3N0Ojc3MDAvaGVhbHRoJwogICAgICBpbnRlcnZhbDogMnMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDE1Cg==",
|
||||||
|
"tags": [
|
||||||
|
"search",
|
||||||
|
"engine",
|
||||||
|
"fulltext",
|
||||||
|
"full",
|
||||||
|
"text",
|
||||||
|
"meilisearch"
|
||||||
|
]
|
||||||
|
},
|
||||||
"metube": {
|
"metube": {
|
||||||
"documentation": "https:\/\/github.com\/alexta69\/metube",
|
"documentation": "https:\/\/github.com\/alexta69\/metube",
|
||||||
"slogan": "A web GUI for youtube-dl with playlist support. It enables you to effortlessly download videos from YouTube and dozens of other sites.",
|
"slogan": "A web GUI for youtube-dl with playlist support. It enables you to effortlessly download videos from YouTube and dozens of other sites.",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user