mirror of
https://github.com/woahbase/alpine-searx
synced 2025-08-22 01:47:27 +00:00
added support for armv7l and aarch64
This commit is contained in:
parent
7a2ed19177
commit
0ae2d42d10
13
.travis.yml
13
.travis.yml
@ -6,17 +6,16 @@ language: bash
|
||||
services: docker
|
||||
env:
|
||||
matrix:
|
||||
- ARCH=x86_64 PUID=1000 PGID=1000
|
||||
- ARCH=armhf PUID=1001 PGID=1001
|
||||
global:
|
||||
- secure: hG+l672xO3hrM1zPsGR9ztOU664JVjBCHtGrkYa+X36xFsrp8ZAUh6SXQORqTk17DcLl6bvxkl8Cgp67yEWe26W6gNNdUHzqQJ4sSEX/e9ikQTzfEugcHDHQxmAhneWZeVXZ7rpf6HObNI9nE0igb7Xd8+Z2jEj/VhCi16B44V7y5vEwyr9IDJUAlRtyA/Y0bBve6xOjZNRxO1nrz0lwIwdvwRjG5HDRgk8P9cukiKz958VgW4avAoag26BJPCPXRHMHCoxQTwRhv8K6EL3BJjO1rC0pCm15BLlTwNd2WO2Zc51Kk/vvJ1zSqJJdwUEnIIur1aNIcCSXDHgOkcUW+3FfV1N/F5LDVArQSZ+F6fCJDU7bsun9Ror0I/1DcGmNcXipdLx1J2OhII06YAltypkQ0Bh/PYUb0KhVFbEVt7D6hWaaq9vs/TlyMeJE69drM/NF9Hd11wsAaYDqjrB247yn09lJlEdpYIaqqrle/zKaqK/SkDzPsNxvOMepMkhbaSkFGycP60fLoHXj985jWeHHmSozT3IFgpKKGPK5lkD5l9I01v6P9rRakX7RTcUUHN4Dc0gMTytv4BQFBXJk6QtGpcXUKhGy1+XdUu46OMmQrLVrsWLtYLKBm87BmMJWGWKvPnWBCBA95itsSiKZ0X3dx7+/lTp5w/ZX1nDZp4k=
|
||||
- secure: 0AlVZlewZstJocxLDNBh6AIsQukOZussohaAuirBGit6uWDf6ldp39MRPy4ApT8E4f+5j9fjLfeobBEFPGNBkbmEAslVuDoXNx3Yx6hAI+msOYUBMLcF3CEvo26WB7MHxHXupLIh9PppGb7VkYLmGWkJhulrXFoTWa8wUbLcYUNQRAvKVMUJo5IwWJnG8XrvOdFns2U9IV2hcGoE9dXFqWJW1RB+Wizm6i3tAbL/fstOb4pxyS7/tVfaekzknZEunhVNjDNP8O3XSNGRFdwcba3raOvs4aqye3Sze/IczWshGzWHehhMqEmMfCuIPdi6Pgo9eHGC9Yv1a2pk0PthWXboWBWSoMEM0dJqMdY6XhZcM2ur3QLNZV0xTWZCK9dyirpy1VuW4ysMpi6mPwVxwHbAOWRyguXMAMkcwjrCtfZHWXUvG8ggBYQfIe0jNQHwKs2BzFPQYM+Kp3PDPIjreHwIs2ioLVdcifoJ64Pnx1K2yqHkQCKs0a5/oFdCTsX9cuY97C+plteQacITwCiil/+doV8CcsX3rDXQGKk6gel/ith8rScX2Gl0gOiIdD3id9Z5qZzSoQ2wOoLIOYDYgh8UrvMtuGUKgjgtqVbpoeOc7r2t4ayayWclj+UARk5vgjvCveyOTufoNV/CN5PA0s8/sak9dwJXstI1Jaj21pc=
|
||||
install: true
|
||||
- ARCH=x86_64 PUID=1000 PGID=1000
|
||||
- ARCH=armhf PUID=1001 PGID=1001
|
||||
- ARCH=armv7l PUID=1001 PGID=1001
|
||||
- ARCH=aarch64 PUID=1001 PGID=1001
|
||||
before_script:
|
||||
- uname -a
|
||||
- docker --version
|
||||
- make --version
|
||||
script:
|
||||
- travis_wait 30 make ARCH=${ARCH} PUID=${PUID} PGID=${PGID} build
|
||||
- travis_wait 30 make ARCH=${ARCH} BUILD_NUMBER=${TRAVIS_BUILD_NUMBER} BRANCH=${TRAVIS_BRANCH} PUID=${PUID} PGID=${PGID} build
|
||||
- make ARCH=${ARCH} PUID=${PUID} PGID=${PGID} test
|
||||
after_success:
|
||||
- docker login -u ${DOCKER_USER} -p ${DOCKER_PASS}
|
||||
|
38
Dockerfile_aarch64
Normal file
38
Dockerfile_aarch64
Normal file
@ -0,0 +1,38 @@
|
||||
ARG DOCKERSRC=frommakefile
|
||||
#
|
||||
FROM ${DOCKERSRC}
|
||||
#
|
||||
ARG PUID=991
|
||||
ARG PGID=991
|
||||
#
|
||||
ENV BASE_URL=False IMAGE_PROXY=False
|
||||
RUN set -xe \
|
||||
&& apk add -Uu --no-cache --purge \
|
||||
ca-certificates \
|
||||
curl \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
openssl \
|
||||
&& apk add --no-cache -t build-dependencies \
|
||||
build-base \
|
||||
python3-dev \
|
||||
libffi-dev \
|
||||
libxslt-dev \
|
||||
libxml2-dev \
|
||||
openssl-dev \
|
||||
tar \
|
||||
&& pip install -v --no-cache -r https://raw.githubusercontent.com/asciimoo/searx/master/requirements.txt \
|
||||
&& mkdir /usr/local/searx \
|
||||
&& cd /usr/local/searx \
|
||||
&& curl -SL https://github.com/asciimoo/searx/archive/master.tar.gz | tar xz --strip 1 \
|
||||
&& sed -i "s/127.0.0.1/0.0.0.0/g" searx/settings.yml \
|
||||
&& apk del --purge build-dependencies \
|
||||
&& rm -f /var/cache/apk/* /tmp/*
|
||||
#
|
||||
COPY root/ /
|
||||
#
|
||||
VOLUME /data
|
||||
#
|
||||
EXPOSE 8888
|
||||
#
|
||||
ENTRYPOINT ["/init"]
|
@ -1,8 +1,6 @@
|
||||
ARG ARCH=frommakefile
|
||||
ARG DOCKERSRC=frommakefile
|
||||
ARG USERNAME=frommakefile
|
||||
#
|
||||
FROM ${USERNAME}/${DOCKERSRC}:${ARCH}
|
||||
FROM ${DOCKERSRC}
|
||||
#
|
||||
ARG PUID=991
|
||||
ARG PGID=991
|
||||
@ -10,11 +8,12 @@ ARG PGID=991
|
||||
ENV BASE_URL=False IMAGE_PROXY=False
|
||||
RUN set -xe \
|
||||
&& apk add -Uu --no-cache --purge \
|
||||
ca-certificates \
|
||||
curl \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
openssl \
|
||||
&& apk add --no-cache -t build-dependencies \
|
||||
curl \
|
||||
build-base \
|
||||
python3-dev \
|
||||
libffi-dev \
|
||||
@ -22,7 +21,6 @@ RUN set -xe \
|
||||
libxml2-dev \
|
||||
openssl-dev \
|
||||
tar \
|
||||
ca-certificates \
|
||||
&& pip install -v --no-cache -r https://raw.githubusercontent.com/asciimoo/searx/master/requirements.txt \
|
||||
&& mkdir /usr/local/searx \
|
||||
&& cd /usr/local/searx \
|
||||
|
38
Dockerfile_armv7l
Normal file
38
Dockerfile_armv7l
Normal file
@ -0,0 +1,38 @@
|
||||
ARG DOCKERSRC=frommakefile
|
||||
#
|
||||
FROM ${DOCKERSRC}
|
||||
#
|
||||
ARG PUID=991
|
||||
ARG PGID=991
|
||||
#
|
||||
ENV BASE_URL=False IMAGE_PROXY=False
|
||||
RUN set -xe \
|
||||
&& apk add -Uu --no-cache --purge \
|
||||
ca-certificates \
|
||||
curl \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
openssl \
|
||||
&& apk add --no-cache -t build-dependencies \
|
||||
build-base \
|
||||
python3-dev \
|
||||
libffi-dev \
|
||||
libxslt-dev \
|
||||
libxml2-dev \
|
||||
openssl-dev \
|
||||
tar \
|
||||
&& pip install -v --no-cache -r https://raw.githubusercontent.com/asciimoo/searx/master/requirements.txt \
|
||||
&& mkdir /usr/local/searx \
|
||||
&& cd /usr/local/searx \
|
||||
&& curl -SL https://github.com/asciimoo/searx/archive/master.tar.gz | tar xz --strip 1 \
|
||||
&& sed -i "s/127.0.0.1/0.0.0.0/g" searx/settings.yml \
|
||||
&& apk del --purge build-dependencies \
|
||||
&& rm -f /var/cache/apk/* /tmp/*
|
||||
#
|
||||
COPY root/ /
|
||||
#
|
||||
VOLUME /data
|
||||
#
|
||||
EXPOSE 8888
|
||||
#
|
||||
ENTRYPOINT ["/init"]
|
@ -1,8 +1,6 @@
|
||||
ARG ARCH=frommakefile
|
||||
ARG DOCKERSRC=frommakefile
|
||||
ARG USERNAME=frommakefile
|
||||
#
|
||||
FROM ${USERNAME}/${DOCKERSRC}:${ARCH}
|
||||
FROM ${DOCKERSRC}
|
||||
#
|
||||
ARG PUID=991
|
||||
ARG PGID=991
|
||||
@ -10,11 +8,12 @@ ARG PGID=991
|
||||
ENV BASE_URL=False IMAGE_PROXY=False
|
||||
RUN set -xe \
|
||||
&& apk add -Uu --no-cache --purge \
|
||||
ca-certificates \
|
||||
curl \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
openssl \
|
||||
&& apk add --no-cache -t build-dependencies \
|
||||
curl \
|
||||
build-base \
|
||||
python3-dev \
|
||||
libffi-dev \
|
||||
@ -22,7 +21,6 @@ RUN set -xe \
|
||||
libxml2-dev \
|
||||
openssl-dev \
|
||||
tar \
|
||||
ca-certificates \
|
||||
&& pip install -v --no-cache -r https://raw.githubusercontent.com/asciimoo/searx/master/requirements.txt \
|
||||
&& mkdir /usr/local/searx \
|
||||
&& cd /usr/local/searx \
|
||||
|
24
README.md
24
README.md
@ -1,4 +1,4 @@
|
||||
[![build status][251]][232] [![commit][255]][231] [![version:x86_64][256]][235] [![size:x86_64][257]][235] [![version:armhf][258]][236] [![size:armhf][259]][236]
|
||||
[![build status][251]][232] [![commit][255]][231] [![version:x86_64][256]][235] [![size:x86_64][257]][235] [![version:armhf][258]][236] [![size:armhf][259]][236] [![version:armv7l][260]][237] [![size:armv7l][261]][237] [![version:aarch64][262]][238] [![size:aarch64][263]][238]
|
||||
|
||||
## [Alpine-SearX][234]
|
||||
#### Container for Alpine Linux + S6 + Python3 + SearX
|
||||
@ -14,11 +14,13 @@ the [s6][133] init system [overlayed][134] in it.
|
||||
|
||||
The image is tagged respectively for the following architectures,
|
||||
* **armhf**
|
||||
* **armv7l**
|
||||
* **aarch64**
|
||||
* **x86_64** (retagged as the `latest` )
|
||||
|
||||
**armhf** builds have embedded binfmt_misc support and contain the
|
||||
**non-x86_64** builds have embedded binfmt_misc support and contain the
|
||||
[qemu-user-static][105] binary that allows for running it also inside
|
||||
an x64 environment that has it.
|
||||
an x86_64 environment that has it.
|
||||
|
||||
---
|
||||
#### Get the Image
|
||||
@ -98,14 +100,14 @@ docker restart docker_searx
|
||||
Get a shell inside a already running container,
|
||||
|
||||
```
|
||||
# make shell
|
||||
# make debug
|
||||
docker exec -it docker_searx /bin/bash
|
||||
```
|
||||
|
||||
set user or login as root,
|
||||
|
||||
```
|
||||
# make rshell
|
||||
# make debug
|
||||
docker exec -u root -it docker_searx /bin/bash
|
||||
```
|
||||
|
||||
@ -155,11 +157,9 @@ for other architectures.]
|
||||
docker build --rm --compress --force-rm \
|
||||
--no-cache=true --pull \
|
||||
-f ./Dockerfile_x86_64 \
|
||||
--build-arg ARCH=x86_64 \
|
||||
--build-arg DOCKERSRC=alpine-python3 \
|
||||
--build-arg DOCKERSRC=woahbase/alpine-python3:x86_64 \
|
||||
--build-arg PGID=1000 \
|
||||
--build-arg PUID=1000 \
|
||||
--build-arg USERNAME=woahbase \
|
||||
-t woahbase/alpine-searx:x86_64 \
|
||||
.
|
||||
```
|
||||
@ -219,6 +219,8 @@ Maintained by [WOAHBase][204].
|
||||
[234]: https://woahbase.online/#/images/alpine-searx
|
||||
[235]: https://microbadger.com/images/woahbase/alpine-searx:x86_64
|
||||
[236]: https://microbadger.com/images/woahbase/alpine-searx:armhf
|
||||
[237]: https://microbadger.com/images/woahbase/alpine-searx:armv7l
|
||||
[238]: https://microbadger.com/images/woahbase/alpine-searx:aarch64
|
||||
|
||||
[251]: https://travis-ci.org/woahbase/alpine-searx.svg?branch=master
|
||||
|
||||
@ -229,3 +231,9 @@ Maintained by [WOAHBase][204].
|
||||
|
||||
[258]: https://images.microbadger.com/badges/version/woahbase/alpine-searx:armhf.svg
|
||||
[259]: https://images.microbadger.com/badges/image/woahbase/alpine-searx:armhf.svg
|
||||
|
||||
[256]: https://images.microbadger.com/badges/version/woahbase/alpine-searx:armv7l.svg
|
||||
[257]: https://images.microbadger.com/badges/image/woahbase/alpine-searx:armv7l.svg
|
||||
|
||||
[258]: https://images.microbadger.com/badges/version/woahbase/alpine-searx:aarch64.svg
|
||||
[259]: https://images.microbadger.com/badges/image/woahbase/alpine-searx:aarch64.svg
|
||||
|
35
makefile
35
makefile
@ -1,7 +1,7 @@
|
||||
# {{{ -- meta
|
||||
|
||||
HOSTARCH := x86_64# on travis.ci
|
||||
ARCH := $(shell uname -m | sed "s_armv7l_armhf_")# armhf/x86_64 auto-detect on build and run
|
||||
HOSTARCH := $(shell uname -m | sed "s_armv6l_armhf_")# x86_64# on travis.ci
|
||||
ARCH := $(shell uname -m | sed "s_armv6l_armhf_")# armhf/x86_64 auto-detect on build and run
|
||||
OPSYS := alpine
|
||||
SHCOMMAND := /bin/bash
|
||||
SVCNAME := searx
|
||||
@ -16,16 +16,25 @@ IMAGETAG := $(USERNAME)/$(DOCKEREPO):$(ARCH)
|
||||
|
||||
CNTNAME := $(SVCNAME) # name for container name : docker_name, hostname : name
|
||||
|
||||
BUILD_NUMBER := 0#assigned in .travis.yml
|
||||
BRANCH := master
|
||||
|
||||
# -- }}}
|
||||
|
||||
# {{{ -- flags
|
||||
|
||||
BUILDFLAGS := --rm --force-rm --compress -f $(CURDIR)/Dockerfile_$(ARCH) -t $(IMAGETAG) \
|
||||
--build-arg ARCH=$(ARCH) \
|
||||
--build-arg DOCKERSRC=$(DOCKERSRC) \
|
||||
--build-arg USERNAME=$(USERNAME) \
|
||||
BUILDFLAGS := --rm --force-rm --compress \
|
||||
-f $(CURDIR)/Dockerfile_$(ARCH) \
|
||||
-t $(IMAGETAG) \
|
||||
--build-arg DOCKERSRC=$(USERNAME)/$(DOCKERSRC):$(ARCH) \
|
||||
--build-arg PUID=$(PUID) \
|
||||
--build-arg PGID=$(PGID) \
|
||||
--build-arg http_proxy=$(http_proxy) \
|
||||
--build-arg https_proxy=$(https_proxy) \
|
||||
--build-arg no_proxy=$(no_proxy) \
|
||||
--label online.woahbase.source-image=$(DOCKERSRC) \
|
||||
--label online.woahbase.build-number=$(BUILD_NUMBER) \
|
||||
--label online.woahbase.branch=$(BRANCH) \
|
||||
--label org.label-schema.build-date=$(shell date -u +"%Y-%m-%dT%H:%M:%SZ") \
|
||||
--label org.label-schema.name=$(DOCKEREPO) \
|
||||
--label org.label-schema.schema-version="1.0" \
|
||||
@ -40,7 +49,6 @@ MOUNTFLAGS := -v $(CURDIR)/data:/data
|
||||
NAMEFLAGS := --name docker_$(CNTNAME) --hostname $(CNTNAME)
|
||||
OTHERFLAGS := -v /etc/hosts:/etc/hosts:ro -v /etc/localtime:/etc/localtime:ro # -e TZ=Asia/Kolkata
|
||||
PORTFLAGS := -p 8888:8888
|
||||
PROXYFLAGS := --build-arg http_proxy=$(http_proxy) --build-arg https_proxy=$(https_proxy) --build-arg no_proxy=$(no_proxy)
|
||||
|
||||
RUNFLAGS := -c 512 -m 512m -e PGID=$(PGID) -e PUID=$(PUID)
|
||||
|
||||
@ -53,7 +61,7 @@ all : run
|
||||
build :
|
||||
echo "Building for $(ARCH) from $(HOSTARCH)";
|
||||
if [ "$(ARCH)" != "$(HOSTARCH)" ]; then make regbinfmt ; fi;
|
||||
docker build $(BUILDFLAGS) $(CACHEFLAGS) $(PROXYFLAGS) .
|
||||
docker build $(BUILDFLAGS) $(CACHEFLAGS) .
|
||||
|
||||
clean :
|
||||
docker images | awk '(NR>1) && ($$2!~/none/) {print $$1":"$$2}' | grep "$(USERNAME)/$(DOCKEREPO)" | xargs -n1 docker rmi
|
||||
@ -65,7 +73,7 @@ pull :
|
||||
docker pull $(IMAGETAG)
|
||||
|
||||
push :
|
||||
docker push $(IMAGETAG); \
|
||||
docker push $(IMAGETAG);
|
||||
if [ "$(ARCH)" = "$(HOSTARCH)" ]; \
|
||||
then \
|
||||
LATESTTAG=$$(echo $(IMAGETAG) | sed 's/:$(ARCH)/:latest/'); \
|
||||
@ -76,16 +84,19 @@ push :
|
||||
restart :
|
||||
docker ps -a | grep 'docker_$(CNTNAME)' -q && docker restart docker_$(CNTNAME) || echo "Service not running.";
|
||||
|
||||
rm : stop
|
||||
rm :
|
||||
docker rm -f docker_$(CNTNAME)
|
||||
|
||||
run :
|
||||
docker run --rm -it $(NAMEFLAGS) $(RUNFLAGS) $(PORTFLAGS) $(MOUNTFLAGS) $(OTHERFLAGS) $(IMAGETAG)
|
||||
|
||||
rshell :
|
||||
shell :
|
||||
docker run --rm -it $(NAMEFLAGS) $(RUNFLAGS) $(PORTFLAGS) $(MOUNTFLAGS) $(OTHERFLAGS) --entrypoint $(SHCOMMAND) $(IMAGETAG)
|
||||
|
||||
rdebug :
|
||||
docker exec -u root -it docker_$(CNTNAME) $(SHCOMMAND)
|
||||
|
||||
shell :
|
||||
debug :
|
||||
docker exec -it docker_$(CNTNAME) $(SHCOMMAND)
|
||||
|
||||
stop :
|
||||
|
Loading…
x
Reference in New Issue
Block a user