docker-carto-jw/Dockerfile

79 lines
3.1 KiB
Docker
Raw Normal View History

2023-05-10 21:00:00 +08:00
#
# Cartodb container
2023-05-10 21:07:45 +08:00
# ubuntu:18.04
2023-05-10 21:00:00 +08:00
#
2023-05-10 21:07:45 +08:00
FROM sverhoeven/cartodb
2023-05-10 21:00:00 +08:00
LABEL maintainer="spacen onenetcom <kuaidian@spacen.net>"
# Configuring locales
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
2023-05-10 21:03:23 +08:00
ADD ./fonts/SourceHanSansCN-Light.otf /usr/share/fonts/SourceHanSansCN-Light.otf
ADD ./fonts/SourceHanSerifCN-Regular.otf /usr/share/fonts/SourceHanSerifCN-Regular.otf
ADD ./fonts/SourceHanSansCN-Regular.otf /usr/share/fonts/SourceHanSansCN-Regular.otf
2023-05-10 22:33:55 +08:00
RUN apt-get install -y nano net-tools ca-certificates
2023-05-11 12:36:29 +08:00
RUN rm -rf /cartodb
2023-05-11 00:16:17 +08:00
2023-05-11 12:36:29 +08:00
RUN git clone https://git.kongjian.xin:8443/cartodb/cartodb-4.29.git cartodb && \
cd cartodb && \
2023-05-11 12:43:34 +08:00
npm install
RUN cd cartodb && bundle exec grunt
2023-05-10 23:38:40 +08:00
# rm -r /tmp/npm-* /root/.npm && \
# perl -pi -e 's/gdal==1\.10\.0/gdal==2.2.2/' python_requirements.txt && \
# pip install --no-binary :all: -r python_requirements.txt && \
# gem install bundler --version=1.17.3 && gem install compass archive-tar-minitar rack && \
# bundle update thin && \
2023-05-11 01:17:49 +08:00
# /bin/bash -l -c 'bundle install' && \
2023-05-10 22:42:18 +08:00
# cp config/grunt_development.json ./config/grunt_true.json && \
2023-05-11 12:43:34 +08:00
# /bin/bash -l -c 'bundle exec grunt'
2023-05-10 22:42:18 +08:00
# && \
#rm -rf .git /root/.cache/pip node_modules
2023-05-11 13:13:26 +08:00
# Copy confs
ADD ./config/CartoDB-dev.js \
/CartoDB-SQL-API/config/environments/development.js
ADD ./config/WS-dev.js \
/Windshaft-cartodb/config/environments/development.js
ADD ./config/app_config.yml /cartodb/config/app_config.yml
ADD ./config/database.yml /cartodb/config/database.yml
ADD ./create_dev_user /cartodb/script/create_dev_user
ADD ./setup_organization.sh /cartodb/script/setup_organization.sh
ADD ./config/cartodb.nginx.proxy.conf /etc/nginx/nginx.conf
ADD ./config/varnish.vcl /etc/varnish.vcl
ADD ./geocoder.sh /cartodb/script/geocoder.sh
ADD ./geocoder_server.sql /cartodb/script/geocoder_server.sql
ADD ./fill_geocoder.sh /cartodb/script/fill_geocoder.sh
ADD ./sync_tables_trigger.sh /cartodb/script/sync_tables_trigger.sh
ENV PATH /usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
RUN mkdir -p /cartodb/log && touch /cartodb/log/users_modifications && \
/opt/varnish/sbin/varnishd -a :6081 -T localhost:6082 -s malloc,256m -f /etc/varnish.vcl && \
perl -pi.bak -e 's/^bind 127.0.0.1 ::1$/bind 0.0.0.0/' /etc/redis/redis.conf && \
service postgresql start && service redis-server start && \
perl -pi -e 's/0\.22\.0/0.22.2/' /cartodb/app/models/user/db_service.rb && \
bash -l -c "cd /cartodb && bash script/create_dev_user && \
bash script/setup_organization.sh && bash script/geocoder.sh" && \
service postgresql stop && service redis-server stop && \
chmod +x /cartodb/script/fill_geocoder.sh && \
chmod +x /cartodb/script/sync_tables_trigger.sh
EXPOSE 80
ENV GDAL_DATA /usr/share/gdal/2.2
# Number of seconds between a sync tables task is run
# Default interval is an hour, use `docker run -e SYNC_TABLES_INTERVAL=60 ...` to change it
ENV SYNC_TABLES_INTERVAL 3600
ADD ./startup.sh /opt/startup.sh
CMD ["/bin/bash", "/opt/startup.sh"]
HEALTHCHECK CMD curl -f http://localhost || exit 1
2023-05-10 21:11:39 +08:00