mirror of
https://github.com/searxng/searxng
synced 2024-10-23 09:46:54 +00:00
fbe40001d3
See #1561 , use uwsgi and Alpine Linux Volume: /var/log/uwsgi contains error log for 2 days (file uwsgi.log) /etc/searx contains the settings.yml and uwsgi.ini files. The docker image creates them if they don't exist. The two files can be modified after the first run. See below. Environement variables: MORTY_URL : external URL of Morty MORTY_KEY : base64 encoded key BASE_URL : external URL of Searx BIND_ADDRESS : internal HTTP port to listen to Labels : org.label-schema.schema.* Parameters: -h : display this help -d : will update the settings and quit immediately (settings.yml and uwsgi.ini) -f : always update the settings (previous version saved with suffix .old). without this parameter, the new settings are copied with suffix .new When the Docker image contains newer settings: - without -f parameter: the new versions are copied to /etc/searx/settings.yml.new and /etc/searx/uwsgi.ini.new. - with -f parameter: the old versions are renamed with .old suffix. The new version replaces /etc/searx/settings.yml and /etc/searx/uwsgi.ini Build using "./manage.sh docker_build", add "push" as parameter also push the Docker image. The script requires a git repository to work (it makes sure that the last git tag matches searx/version.py) "git describe" is used to create a meaningful version. Example : 0.15.0-90-49c5bcb4-dirty (dirty means that the docker image was made with uncommited changes). Use "docker inspect -f {{.Config.Labels.version}} searx" to get the version of an existing image. .dockerignore based on .gitignore .travis.yml: include docker stage
60 lines
1.2 KiB
YAML
60 lines
1.2 KiB
YAML
language: python
|
|
sudo: false
|
|
cache:
|
|
- pip
|
|
- npm
|
|
- directories:
|
|
- $HOME/.cache/pip
|
|
|
|
addons:
|
|
firefox: "latest"
|
|
|
|
before_install:
|
|
- "export DISPLAY=:99.0"
|
|
- "sh -e /etc/init.d/xvfb start"
|
|
install:
|
|
- ./manage.sh install_geckodriver ~/drivers
|
|
- export PATH=~/drivers:$PATH
|
|
- ./manage.sh npm_packages
|
|
- ./manage.sh update_dev_packages
|
|
- pip install codecov
|
|
script:
|
|
- ./manage.sh styles
|
|
- ./manage.sh grunt_build
|
|
- ./manage.sh tests
|
|
after_success:
|
|
- ./manage.sh py_test_coverage
|
|
- codecov
|
|
|
|
stages:
|
|
- test
|
|
- name: docker
|
|
if: branch = master AND type != pull_request AND env(DOCKER_USERNAME) IS present
|
|
|
|
jobs:
|
|
include:
|
|
- python: "2.7"
|
|
- python: "3.5"
|
|
- python: "3.6"
|
|
- stage: docker
|
|
python: "3.6"
|
|
git:
|
|
depth: false
|
|
services:
|
|
- docker
|
|
addons: []
|
|
before_install: true
|
|
install: true
|
|
script:
|
|
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
|
|
- ./manage.sh docker_build push
|
|
after_success: true
|
|
|
|
notifications:
|
|
irc:
|
|
channels:
|
|
- "irc.freenode.org#searx"
|
|
template:
|
|
- "%{repository}/#%{build_number}/%{branch} (%{author}): %{message} %{build_url}"
|
|
on_success: change
|