Browse Source

Run update.sh

Docker Library Bot 5 năm trước cách đây
mục cha
commit
7b2cb51595
2 tập tin đã thay đổi với 289 bổ sung7 xóa
  1. 5 7
      arangodb/README.md
  2. 284 0
      monica/README.md

+ 5 - 7
arangodb/README.md

@@ -49,9 +49,9 @@ WARNING:
 
 # What is ArangoDB?
 
-ArangoDB is a multi-model, open-source database with flexible data models for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions. Use ACID transactions if you require them. Scale horizontally with a few mouse clicks.
+ArangoDB is a multi-model, open-source database with flexible data models for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions. Use ACID transactions if you require them. Scale horizontally and vertically with a few mouse clicks.
 
-ArangoDB runs everywhere: On-prem, in the cloud and also on [ArangoDBs Cloud Service Oasis](https://cloud.arangodb.com/home).
+ArangoDB runs everywhere: On-prem, in the cloud and also on [ArangoDB's Cloud Service Oasis](https://cloud.arangodb.com/home).
 
 The supported data models can be mixed in queries and allow ArangoDB to be the aggregation point for your data.
 
@@ -200,11 +200,9 @@ See more information about [Configuration](https://www.arangodb.com/docs/stable/
 
 ## Persistent Data
 
-ArangoDB supports two different storage engines as of ArangoDB 3.2. You can choose them while instantiating the container with the environment variable `ARANGO_STORAGE_ENGINE`. With `mmfiles` you choose the classic storage engine, `rocksdb` will choose the newly introduced storage engine based on [RocksDB](http://rocksdb.org/). The default choice is `mmfiles`.
+ArangoDB supports two different storage engines from version 3.2 to 3.6. You can choose them while instantiating the container with the environment variable `ARANGO_STORAGE_ENGINE`. With `mmfiles` you choose the classic storage engine (not available in 3.7 and later), `rocksdb` will choose the storage engine based on [RocksDB](http://rocksdb.org/). The default choice is `rocksdb` from version 3.4 on.
 
-ArangoDB use the volume `/var/lib/arangodb3` as database directory to store the collection data and the volume `/var/lib/arangodb3-apps` as apps directory to store any extensions. These directories are marked as docker volumes.
-
-Please note that the old version 2.x used `/var/lib/arangodb` and `/var/lib/arangodb-apps`. We will refer to the 3.x variant in this document. In case you are starting a 2.x image just replace it with the 2.x variant.
+ArangoDB uses the volume `/var/lib/arangodb3` as database directory to store the collection data and the volume `/var/lib/arangodb3-apps` as apps directory to store any extensions. These directories are marked as docker volumes.
 
 See `docker inspect --format "{{ .Config.Volumes}}" arangodb` for all volumes.
 
@@ -255,7 +253,7 @@ When deriving the image, you can control the instantiation via putting files int
 
 # License
 
-[Arangodb itself is licensed under the Apache License](https://github.com/arangodb/arangodb/blob/devel/LICENSE), but it contains [software of third parties under their respective licenses](https://github.com/arangodb/arangodb/blob/devel/LICENSES-OTHER-COMPONENTS.md).
+[ArangoDB itself is licensed under the Apache License](https://github.com/arangodb/arangodb/blob/devel/LICENSE), but it contains [software of third parties under their respective licenses](https://github.com/arangodb/arangodb/blob/devel/LICENSES-OTHER-COMPONENTS.md).
 
 As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).
 

+ 284 - 0
monica/README.md

@@ -0,0 +1,284 @@
+<!--
+
+********************************************************************************
+
+WARNING:
+
+    DO NOT EDIT "monica/README.md"
+
+    IT IS AUTO-GENERATED
+
+    (from the other files in "monica/" combined with a set of templates)
+
+********************************************************************************
+
+-->
+
+# Quick reference
+
+-	**Maintained by**:  
+	[Monica Team](https://github.com/monicahq/docker)
+
+-	**Where to get help**:  
+	[the Docker Community Forums](https://forums.docker.com/), [the Docker Community Slack](https://dockr.ly/slack), or [Stack Overflow](https://stackoverflow.com/search?tab=newest&q=docker)
+
+# Supported tags and respective `Dockerfile` links
+
+-	[`2.18.0-apache`, `2.18-apache`, `2-apache`, `apache`, `2.18.0`, `2.18`, `2`, `latest`](https://github.com/monicahq/docker/blob/7a83d357006fe1b7947717d75842ea4d6f720ac5/apache/Dockerfile)
+-	[`2.18.0-fpm`, `2.18-fpm`, `2-fpm`, `fpm`](https://github.com/monicahq/docker/blob/7a83d357006fe1b7947717d75842ea4d6f720ac5/fpm/Dockerfile)
+-	[`2.18.0-fpm-alpine`, `2.18-fpm-alpine`, `2-fpm-alpine`, `fpm-alpine`](https://github.com/monicahq/docker/blob/7a83d357006fe1b7947717d75842ea4d6f720ac5/fpm-alpine/Dockerfile)
+
+# Quick reference (cont.)
+
+-	**Where to file issues**:  
+	[https://github.com/monicahq/docker/issues](https://github.com/monicahq/docker/issues)
+
+-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
+	[`amd64`](https://hub.docker.com/r/amd64/monica/), [`arm32v5`](https://hub.docker.com/r/arm32v5/monica/), [`arm32v6`](https://hub.docker.com/r/arm32v6/monica/), [`arm32v7`](https://hub.docker.com/r/arm32v7/monica/), [`arm64v8`](https://hub.docker.com/r/arm64v8/monica/), [`i386`](https://hub.docker.com/r/i386/monica/), [`mips64le`](https://hub.docker.com/r/mips64le/monica/), [`ppc64le`](https://hub.docker.com/r/ppc64le/monica/), [`s390x`](https://hub.docker.com/r/s390x/monica/)
+
+-	**Published image artifact details**:  
+	[repo-info repo's `repos/monica/` directory](https://github.com/docker-library/repo-info/blob/master/repos/monica) ([history](https://github.com/docker-library/repo-info/commits/master/repos/monica))  
+	(image metadata, transfer size, etc)
+
+-	**Image updates**:  
+	[official-images PRs with label `library/monica`](https://github.com/docker-library/official-images/pulls?q=label%3Alibrary%2Fmonica)  
+	[official-images repo's `library/monica` file](https://github.com/docker-library/official-images/blob/master/library/monica) ([history](https://github.com/docker-library/official-images/commits/master/library/monica))
+
+-	**Source of this description**:  
+	[docs repo's `monica/` directory](https://github.com/docker-library/docs/tree/master/monica) ([history](https://github.com/docker-library/docs/commits/master/monica))
+
+# What is Monica?
+
+Monica is a great open source personal relationship management system to organize the interactions with your loved ones.
+
+
+
+# How to use this image
+
+There are two versions of the image you may choose from.
+
+The `apache` tag contains a full Monica installation with an apache webserver. This points to the default `latest` tag too.
+
+The `fpm` tag contains a fastCGI-Process that serves the web pages. This image should be combined with a webserver used as a proxy, like apache or nginx.
+
+### Using the apache image
+
+This image contains a webserver that exposes port 80. Run the container with:
+
+```console
+docker run --name some-monica -d -p 80:80 monica
+```
+
+### Using the fpm image
+
+This image serves a fastCGI server that exposes port 9000. You may need an additional web server that can proxy requests to the fpm port 9000 of the container. Run this container with:
+
+```console
+docker run --name some-monica -d -p 9000:9000 monica:fpm
+```
+
+### Persistent data storage
+
+To have a persistent storage for your datas, you may want to create volumes for your db, and for monica you will have to save the `/var/www/html/storage` directory.
+
+Run a container with this named volume:
+
+```console
+docker run -d \
+        -v monica_data:/var/www/html/storage \
+        monica
+```
+
+### Run commands inside the container
+
+Like every Laravel application, the `php artisan` command is very usefull for Monica. To run a command inside the container, run
+
+```console
+docker exec CONTAINER_ID php artisan COMMAND
+```
+
+or for docker-compose
+
+```console
+docker-compose exec monica php artisan COMMAND
+```
+
+where `monica` is the name of the service in your `docker-compose.yml` file.
+
+## Running the image with docker-compose
+
+See some examples of docker-compose possibilities in the [example section](https://github.com/monicahq/docker/blob/master/.examples).
+
+---
+
+### Apache version
+
+This version will use the apache image and add a mysql container. The volumes are set to keep your data persistent. This setup provides **no ssl encryption** and is intended to run behind a proxy.
+
+Make sure to pass in values for `APP_KEY` variable before you run this setup.
+
+1.	Create a `docker-compose.yml` file
+
+	```yaml
+	version: "3.4"
+
+	services:
+	  app:
+	    image: monica
+	    depends_on:
+	      - db
+	    ports:
+	      - 8080:80
+	    environment:
+	      - APP_KEY=
+	      - DB_HOST=db
+	    volumes:
+	      - data:/var/www/html/storage
+	    restart: always
+
+	  db:
+	    image: mysql:5.7
+	    environment:
+	      - MYSQL_RANDOM_ROOT_PASSWORD=true
+	      - MYSQL_DATABASE=monica
+	      - MYSQL_USER=homestead
+	      - MYSQL_PASSWORD=secret
+	    volumes:
+	      - mysql:/var/lib/mysql
+	    restart: always
+
+	volumes:
+	  data:
+	    name: data
+	  mysql:
+	    name: mysql
+	```
+
+2.	Set a value for `APP_KEY` variable before you run this setup. It should be a random 32-character string. For example, if you have the `pwgen` utility installed, you can copy and paste the output of:
+
+	```console
+	pwgen -s 32 1
+	```
+
+3.	Run
+
+	```console
+	docker-compose up -d
+	```
+
+	Wait until all migrations are done and then access Monica at http://localhost:8080/ from your host system. If this looks ok, add your first user account.
+
+4.	Run this command once:
+
+	```console
+	docker-compose exec app php artisan setup:production
+	```
+
+### FPM version
+
+When using FPM image, you will need another container with a webserver to proxy http requests. In this example we use nginx with a basic container to do this.
+
+1.	Download `nginx.conf` and `Dockerfile` file for nginx image. An example can be found on the [`example section`](https://github.com/monicahq/docker/blob/master/.examples/supervisor/fpm/web/). The `web` container image should be pre-build before each deploy with: `docker-compose build`
+
+2.	Create a `docker-compose.yml` file
+
+	```yaml
+	version: "3.4"
+
+	services:
+	  app:
+	    image: monica:fpm
+	    depends_on:
+	      - db
+	    environment:
+	      - APP_KEY=
+	      - DB_HOST=db
+	    volumes:
+	      - data:/var/www/html/storage
+	    restart: always
+
+	  web:
+	    build: ./web
+	    ports:
+	      - 8080:80
+	    depends_on:
+	      - app
+	    volumes:
+	      - data:/var/www/html/storage:ro
+	    restart: always
+
+	  db:
+	    image: mysql:5.7
+	    environment:
+	      - MYSQL_RANDOM_ROOT_PASSWORD=true
+	      - MYSQL_DATABASE=monica
+	      - MYSQL_USER=homestead
+	      - MYSQL_PASSWORD=secret
+	    volumes:
+	      - mysql:/var/lib/mysql
+	    restart: always
+
+	volumes:
+	  data:
+	    name: data
+	  mysql:
+	    name: mysql
+	```
+
+3.	Set a value for `APP_KEY` variable before you run this setup. It should be a random 32-character string. For example, if you have the `pwgen` utility installed, you can copy and paste the output of:
+
+	```console
+	pwgen -s 32 1
+	```
+
+4.	Run
+
+	```console
+	docker-compose up -d
+	```
+
+	Wait until all migrations are done and then access Monica at http://localhost:8080/ from your host system. If this looks ok, add your first user account.
+
+5.	Run this command once:
+
+	```console
+	docker-compose exec app php artisan setup:production
+	```
+
+## Make Monica available from the internet
+
+To expose your Monica instance for the internet, it's important to set environment variable `APP_ENV=production`. In this case `https` mode will be mandatory.
+
+### Using a proxy webserver on the host
+
+One way to expose your Monica instance is to use a proxy webserver from your host with SSL capabilities. This is possible with a reverse proxy.
+
+### Using a proxy webserver container
+
+See some examples of docker-compose possibilities in the [example section](https://github.com/monicahq/docker/blob/master/.examples) to show how to a proxy webserver with ssl capabilities.
+
+# Image Variants
+
+The `monica` images come in many flavors, each designed for a specific use case.
+
+## `monica:<version>`
+
+This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of.
+
+## `monica:<version>-alpine`
+
+This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general.
+
+This variant is highly recommended when final image size being as small as possible is desired. The main caveat to note is that it does use [musl libc](https://musl.libc.org) instead of [glibc and friends](https://www.etalabs.net/compare_libcs.html), so certain software might run into issues depending on the depth of their libc requirements. However, most software doesn't have an issue with this, so this variant is usually a very safe choice. See [this Hacker News comment thread](https://news.ycombinator.com/item?id=10782897) for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.
+
+To minimize image size, it's uncommon for additional related tools (such as `git` or `bash`) to be included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar).
+
+# License
+
+View [license information](https://github.com/monicahq/monica/blob/master/LICENSE) for the software contained in this image.
+
+As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).
+
+Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `monica/` directory](https://github.com/docker-library/repo-info/tree/master/repos/monica).
+
+As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.