--- /dev/null
+image:
+ docker build -t newslash-build .
+
+run:
+ docker run -ti --rm -v $(shell pwd)/build:/var/newslash/build newslash-build bash
+
fi
# generate changelog
-./misc/gen_changelog.sh > debian/changelog
+./misc/gen_changelog.sh > ./debian/changelog
+git describe --tags HEAD | tr -d "\n" > ./src/newslash_web/templates/package_revision
+date +" %Y-%m-%d %T %Z" | tr -d "\n" >> ./src/newslash_web/templates/package_revision
+
# create default config file
#cp /home/hylom/mojolicious/src/newslash_web/newslash-web.production.json ./repo/src/newslash_web/'
--- /dev/null
+install-test-env: $(INSTALL_TEST_DOCKERFILE) files
+ docker build $(DOCKER_OPTS) -f $< -t newslash-install-test .
+
+install-test:
+ docker run -ti --rm -v $(APT_REPO_DIR):/var/local-repo \
+ --add-host srad-test-db:$(DB_HOST) \
+ --add-host newslash-redis:$(REDIS_HOST) \
+ -v $(shell pwd)/newslash.conf:/etc/newslash/newslash.conf \
+ -e APT_REPO="$(APT_REPO)" \
+ -p 8000:80 \
+ newslash-install-test bash
+
-#FROM debian:stretch
-FROM stretch_mojolicious
+FROM newslash-base:latest
-RUN apt-get update -y
+# install jenkins related packaged
RUN apt-get install -y openjdk-8-jdk openssh-server
EXPOSE 22
+COPY files/jenkins.pub /root/.ssh/authorized_keys
+RUN chmod 600 /root/.ssh/authorized_keys
-RUN groupadd jenkins && useradd -d /home/jenkins -g jenkins -m jenkins
-RUN mkdir /home/jenkins/.ssh
-COPY files/id_jenkins.pub /home/jenkins/.ssh/authorized_keys
-RUN chown -R jenkins:jenkins /home/jenkins/.ssh \
- && chmod 700 /home/jenkins/.ssh \
- && chmod 600 /home/jenkins/.ssh/*
RUN mkdir -p /run/sshd
+CMD ["/usr/sbin/sshd", "-D"]
+EXPOSE 80
+
#RUN dpkg -i /tmp/$PYLUCENE_DEB
COPY files/newslash.cnf /etc/mysql/conf.d/
-EXPOSE 80
+CMD ["/var/newslash/src/newslash_web/script/newslash_web", "daemon" ]
-TAG_NAME=newslash-base
-HOST_NAME= sdtest.osdn.co.jp:5000
-NEWSLASH_DIR=$(shell pwd)/../
-PORT_OPTS=-p 3000:3000
-SEARCHD_DOCKERFILE=Dockerfile_for_searchd
-INSTALL_TEST_DOCKERFILE=installtest_Dockerfile
+NEWSLASH_DIR=$(shell pwd)/../../
+IMAGE_NAME=newslash-base
+CONTAINER_NAME=newslash-dev
-DB_HOST=172.17.0.7
-REDIS_HOST=172.17.0.8
-APT_REPO_DIR=/var/debian-osdn/debian-osdn/srad-devel
-APT_REPO=file:/var/local-repo ./
+PORT_OPTS=-p 3000:3000
+LINK_OPTS=--link srad-db:srad-test-db \
+ --link newslash-redis:newslash-redis \
+ --link newslash-db:newslash-db
+# --link newslash-searchd:newslash-searchd
+CERTS_OPTS=-v /etc/letsencrypt:/var/certs
+ENV=-e "MOJO_LISTEN=https://*:3000?cert=/var/certs/live/sdtest.osdn.co.jp/cert.pem&key=/var/certs/live/sdtest.osdn.co.jp/privkey.pem"
-build-base: Dockerfile files
- docker build $(DOCKER_OPTS) -t newslash-base .
-run:
- docker run -ti --rm $(PORT_OPTS) -v $(NEWSLASH_DIR):/var/newslash newslash-base bash
+image: Dockerfiles/base files
+ docker build -f $< $(DOCKER_OPTS) -t $(IMAGE_NAME) .
-searchd: $(SEARCHD_DOCKERFILE) files
- docker build $(DOCKER_OPTS) -f $< -t newslash-searchd-base .
+shell:
+ docker run --rm -ti $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME) bash
-searchd-run:
- docker run -ti --rm -p 6000:6000 -v $(NEWSLASH_DIR):/var/newslash newslash-searchd-base bash
+run:
+# test -n $(docker ps -a --format "{{.Names}}" | grep $(CONTAINER_NAME)) && docker rm $(IMAGE_NAME)
+# docker run -ti --name $(CONTAINER_NAME) $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME)
+ docker run --name $(IMAGE_NAME) -ti $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME)
-push-searchd:
- docker push $(HOST_NAME)/osdn/newslash-searchd
+test:
+# test -n $(docker ps -a --format "{{.Names}}" | grep $(CONTAINER_NAME)) && docker rm $(IMAGE_NAME)
+ docker run --name $(IMAGE_NAME) -ti $(ENV) $(PORT_OPTS) $(LINK_OPTS) $(CERTS_OPTS) -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME) /var/newslash/src/newslash_web/script/newslash_web test -m test
-install-test-env: $(INSTALL_TEST_DOCKERFILE) files
- docker build $(DOCKER_OPTS) -f $< -t newslash-install-test .
+stop:
+ docker stop $(CONTAINER_NAME)
-install-test:
- docker run -ti --rm -v $(APT_REPO_DIR):/var/local-repo \
- --add-host srad-test-db:$(DB_HOST) \
- --add-host newslash-redis:$(REDIS_HOST) \
- -v $(shell pwd)/newslash.conf:/etc/newslash/newslash.conf \
- -e APT_REPO="$(APT_REPO)" \
- -p 8000:80 \
- newslash-install-test bash
+restart:
+ docker restart $(CONTAINER_NAME)
# install basic packages
RUN apt-get update -y
-RUN apt-get install -y vim-nox lv less
# install python and lucene packages
-RUN apt-get install -y pylucene python-mysql.connector liblucene4.10-java libasm-java
-RUN apt-get install -y python-yaml
+RUN apt-get install -y pylucene python-mysql.connector liblucene4.10-java libasm-java python-yaml
# install custom pylucene package
COPY files/$PYLUCENE_DEB /tmp
RUN dpkg -i /tmp/$PYLUCENE_DEB
-COPY files/newslash.cnf /etc/mysql/conf.d/
-EXPOSE 6000
+#COPY files/newslash.cnf /etc/mysql/conf.d/
--- /dev/null
+NEWSLASH_DIR=$(shell pwd)/../../
+IMAGE_NAME=newslash-searchd
+CONTAINER_NAME=newslash-searchd
+
+PORT_OPTS=-p 6000:6000
+LINK_OPTS=--link srad-db:srad-test-db --link newslash-redis:newslash-redis
+CERTS_OPTS=-v /etc/letsencrypt:/var/certs
+ENV=-e "MOJO_LISTEN=https://*:3000?cert=/var/certs/live/sdtest.osdn.co.jp/cert.pem&key=/var/certs/live/sdtest.osdn.co.jp/privkey.pem"
+
+
+image: Dockerfile files
+ docker build $(DOCKER_OPTS) -f $< -t $(IMAGE_NAME) .
+
+run:
+ docker run -ti --rm -p 6000:6000 -v $(NEWSLASH_DIR):/var/newslash $(IMAGE_NAME) bash
+