diff --git a/grafana-agent/README.md b/grafana-agent/README.md index 72e70549a714e16d83063b256ff61d0bf2dae8e1..3144b2cdd3633cc7914b9708a10a45704f44d8ad 100644 --- a/grafana-agent/README.md +++ b/grafana-agent/README.md @@ -1,30 +1,58 @@ -# Grafana-agent - # Quick reference - The official Grafana-agent docker image. -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) - -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). +# Grafana-agent | openEuler +Current Grafana-agent docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -1. Build images and push: -```shell -docker buildx build -t "openeuler/grafana-agent:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +Grafana Agent is an OpenTelemetry Collector distribution with configuration inspired by [Terraform](https://www.terraform.io/). It is designed to be flexible, performant, and compatible with multiple ecosystems such as Prometheus and OpenTelemetry. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Grafana Agent is based around **components**. Components are wired together to form programmable observability **pipelines** for telemetry collection, processing, and delivery. -2. Run: -```shell -docker run -d openeuler/grafana-agent:$TAG -``` +Grafana Agent can collect, transform, and send data to: -# Supported tags and respective Dockerfile links +- The [Prometheus](https://prometheus.io/) ecosystem +- The [OpenTelemetry](https://opentelemetry.io/) ecosystem +- The Grafana open source ecosystem ([Loki](https://github.com/grafana/loki), [Grafana](https://github.com/grafana/grafana), [Tempo](https://github.com/grafana/tempo), [Mimir](https://github.com/grafana/mimir), [Pyroscope](https://github.com/grafana/pyroscope)) -- 0.40.2-oe2203sp3: grafana-agent v0.40.2, openEuler 22.03-LTS-SP3 +Learn more on [Grafana-agent website](https://grafana.com/docs/agent/latest/). -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Supported tags and respective Dockerfile links +The tag of each grafana-agent docker image is consist of the version of grafana-agent and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[0.40.2-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/grafana-agent/0.40.2/22.03-lts-sp3/Dockerfile)| Grafana-agent 0.40.2 on openEuler 22.03-LTS-SP3 | amd64, arm64 | +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/grafana-agent` image from docker + ```bash + docker pull openeuler/grafana-agent:{Tag} + ``` +- Start a grafana-agent instance + + ```bash + docker run -d --name my-grafana-agent -p 12345:12345 openeuler/grafana-agent:{Tag} + ``` + After the instance `my-grafana-agent` is started, access the grafana-agent service through `http://localhost:12345`. + + +- Container startup options + | Option | Description | + |--|--| + | `-p 12345:12345` | Expose Grafana Agent on `localhost:12345`. | + | `-v /path/to/agent/config.yaml:/etc/agent/agent.yaml` | Local configuration file `agent.yml`. | + +- View container running logs + ```bash + docker logs -f my-grafana-agent + ``` +- To get an interactive shell + ```bash + docker exec -it my-grafana-agent /bin/bash + ``` +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/grafana/README.md b/grafana/README.md index 258e618f1bbf175c34f5116c8def6dfe43ce7811..0e6957b3e9df57f6cea84b69f47f51d78ad2d7c2 100644 --- a/grafana/README.md +++ b/grafana/README.md @@ -1,31 +1,53 @@ -# grafana - # Quick reference -- The official grafana docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) - -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- The official Grafana docker image. -# Build reference +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -1. Build images and push: -```shell -docker buildx build -t "openeuler/grafana:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). +- +# Grafana | openEuler +Current Grafana docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +[Grafana open source software](https://grafana.com/oss/) enables you to query, visualize, alert on, and explore your metrics, logs, and traces wherever they are stored. Grafana OSS provides you with tools to turn your time-series database (TSDB) data into insightful graphs and visualizations. The Grafana OSS plugin framework also enables you to connect other data sources like NoSQL/SQL databases, ticketing tools like Jira or ServiceNow, and CI/CD tooling like GitLab. -# How to use this image -```shell -docker run --name my_grafana -d -p 3000:3000 openeuler/grafana:$VERSION -``` +Learn more on [Grafana website](https://grafana.com/docs/grafana/latest/introduction/). # Supported tags and respective Dockerfile links - -- 7.5.11-oe2203lts: grafana v7.5.11, openEuler 22.03 LTS -- 10.4.1-oe2203sp3: grafana v10.4.1, openEuler 22.03 LTS SP3 - -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +The tag of each grafana docker image is consist of the version of grafana and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[7.5.11-oe2203lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/grafana/7.5.1/22.03-lts/Dockerfile)| Grafana 7.5.1 on openEuler 22.03-LTS | amd64, arm64 | +|[10.4.1-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/grafana/10.4.1/22.03-lts-sp3/Dockerfile)| Grafana 10.4.1 on openEuler 22.03-LTS-SP3 | amd64, arm64 | +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/grafana` image from docker + ```bash + docker pull openeuler/grafana:{Tag} + ``` +- Start a grafana instance + + ```bash + docker run -d --name my-grafana -p 3000:3000 openeuler/grafana:{Tag} + ``` + After the instance `my-grafana` is started, access the kafka service through `http://localhost:3000`. + + +- Container startup options + | Option | Description | + |--|--| + | `-p 3000:3000` | Expose Apache Kafka server on `localhost:3000`. | + | `-v /path/to/grafana/provisioning/files/:/etc/grafana/provisioning/` | Directory to provision Grafana (see [documentation](https://grafana.com/docs/grafana/latest/administration/provisioning/)⁠). | + | `-v /path/to/persisted/data:/var/lib/grafana` | Persist data with a volume instead of initializing a new database for each newly launched container. | + +- View container running logs + ```bash + docker logs -f my-grafana + ``` +- To get an interactive shell + ```bash + docker exec -it my-grafana /bin/bash + ``` +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/kafka/README.md b/kafka/README.md index fb8d0b62649d71bfd8a4a452855c913b1b2d869a..20bf44f13fbc7a1dd901f6522d83fddf1fcba374 100644 --- a/kafka/README.md +++ b/kafka/README.md @@ -1,30 +1,56 @@ -# Kafka - # Quick reference -- The official kafka docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official Kafka docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). +# Kafka | openEuler +Current Kafka docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -1. Build images and push: -```shell -docker buildx build -t "openeuler/kafka:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Learn more on [Kafka website](https://kafka.apache.org/). -2. Run: -```shell -docker run -d --name kafka -p 9092:9092 openeuler/kafka:{TAG} -``` # Supported tags and respective Dockerfile links - -- 3.7.0-oe2203sp3: kafka v3.7.0, openEuler 22.03 LTS SP3 - -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +The tag of each kafka docker image is consist of the version of kafka and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[3.7.0-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/kafka/3.7.0/22.03-lts-sp3/Dockerfile)| Apache Kafka server 3.7.0 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/kafka` image from docker + ```bash + docker pull openeuler/kafka:{Tag} + ``` +- Start a kafka instance + + ```bash + docker run -d --name my-kafka -p 9092:9092 openeuler/kafka:{Tag} + ``` + After the instance `my-kafka` is started, access the kafka service through `http://localhost:9092`. + +- Container startup options + | Option | Description | + |--|--| + | `-p 9092:9092` | Expose Apache Kafka server on `localhost:9092`. | + | `-e ZOOKEEPER_HOST=` | Hostname for the related Zookeeper instance. | + | `-e ZOOKEEPER_PORT=2181` | Port for the related Zookeeper instance. | + | `-v /path/to/config/file:/etc/kafka/server.properties` | Local Kafka configuration file. | + | `-v kafkaData:/var/lib/kafka` | "Persist data in a docker volume named `kafkaData`. " "Make sure that the mount point is consistent with the configuration property `logs.dirs`. | + +- View container running logs + ```bash + docker logs -f my-kafka + ``` +- To get an interactive shell + ```bash + docker exec -it my-kafka /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/memcached/README.md b/memcached/README.md index bd01735b7324e235fe530f2aa2f470ab1299f955..d8e82a9229a95694a545a4880c25af965009f569 100644 --- a/memcached/README.md +++ b/memcached/README.md @@ -1,31 +1,63 @@ -# memcached - # Quick reference -- The official memcached docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official Memcached docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/memcached:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +# Memcached | openEuler +Current Memcached docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering. Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load. Memcached is simple yet powerful. Its simple design promotes quick deployment, ease of development, and solves many problems facing large data caches. Its API is available for most popular languages. -# How to use this image -```shell -docker run --name my_memcached -d -p 11211:11211 openeuler/memcached:$VERSION -``` +Learn more about Memcached on the [https://memcached.org/). # Supported tags and respective Dockerfile links - -- 1.6.12-oe2203lts: memcached v1.6.12, openEuler 22.03 LTS -- 1.6.24-oe2203sp3: memcached v1.6.24, openEuler 22.03 LTS SP3 - -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +The tag of each `memcached` docker image is consist of the version of `memcached` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[1.6.12-oe2203lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/memcached/1.6.12/22.03-lts-sp3/Dockerfile)| Memcached 1.6.12 on openEuler 22.03-LTS | amd64, arm64 | +|[1.6.24-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/memcached/1.6.24/22.03-lts-sp3/Dockerfile)| Memcached 1.6.24 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/memcached` image from docker + + ```bash + docker pull openeuler/memcached:{Tag} + ``` + +- Start a memcached instance + + ```bash + docker run -d --name my-memcached -p 11211:11211 openeuler/memcached:{Tag} + ``` + After the instance `my-memcached` is started, access the Memcached service through `http://localhost:11211`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 11211:11211` | Expose Memcached server on `localhost:11211`. | + | `-e MEMCACHED_CACHE_SIZE=64MB` | Determines the size of the cache. | + | `-e MEMCACHED_MAX_CONNECTIONS=1024` | Determines the maximum number of concurrent connections. | + | `-e MEMCACHED_THREADS=4` | Determines the number of threads to process requests. | + | `-e MEMCACHED_PASSWORD` | Define the password for the `root` user if another username is provided. By default the authentication is disabled but if this option is passed it becomes enabled. | + | `-e MEMCACHED_USERNAME` | Define a new user. If this option is passed a password is needed to authenticate the new user. | + +- View container running logs + + ```bash + docker logs -f my-memcached + ``` + +- To get an interactive shell + + ```bash + docker exec -it my-memcached /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/mimir/README.md b/mimir/README.md index 3be485d3ae567c68b976be0daa8fbcf7401035c9..a10668bce009e2e96b22f12ba3692b97c5b503a3 100644 --- a/mimir/README.md +++ b/mimir/README.md @@ -1,30 +1,64 @@ -# Mimir - # Quick reference -- The official mimir docker image. +- The official Grafana Mimir docker image. -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -# Build reference +# Grafana Mimir | openEuler +Current Grafana Mimir docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -1. Build images and push: -```shell -docker buildx build -t "openeuler/mimir:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +Grafana Mimir is an open source software project that provides a scalable long-term storage for Prometheus. Some of the core strengths of Grafana Mimir include: -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +* Easy to install and maintain: Grafana Mimir’s extensive documentation, tutorials, and deployment tooling make it quick to get started. Using its monolithic mode, you can get Grafana Mimir up and running with just one binary and no additional dependencies. Once deployed, the best-practice dashboards, alerts, and runbooks packaged with Grafana Mimir make it easy to monitor the health of the system. +* Massive scalability: You can run Grafana Mimir’s horizontally-scalable architecture across multiple machines, resulting in the ability to process orders of magnitude more time series than a single Prometheus instance. Internal testing shows that Grafana Mimir handles up to 1 billion active time series. +* Global view of metrics: Grafana Mimir enables you to run queries that aggregate series from multiple Prometheus instances, giving you a global view of your systems. Its query engine extensively parallelizes query execution, so that even the highest-cardinality queries complete with blazing speed. +* Cheap, durable metric storage: Grafana Mimir uses object storage for long-term data storage, allowing it to take advantage of this ubiquitous, cost-effective, high-durability technology. It is compatible with multiple object store implementations, including AWS S3, Google Cloud Storage, Azure Blob Storage, OpenStack Swift, as well as any S3-compatible object storage. +* High availability: Grafana Mimir replicates incoming metrics, ensuring that no data is lost in the event of machine failure. Its horizontally scalable architecture also means that it can be restarted, upgraded, or downgraded with zero downtime, which means no interruptions to metrics ingestion or querying. +* Natively multi-tenant: Grafana Mimir’s multi-tenant architecture enables you to isolate data and queries from independent teams or business units, making it possible for these groups to share the same cluster. Advanced limits and quality-of-service controls ensure that capacity is shared fairly among tenants. -2. Run: -```shell -docker run -d -p 8080:8080 openeuler/mimir:$TAG -``` +Learn more about Grafana Mimir on the [https://grafana.com/docs/mimir/latest/). # Supported tags and respective Dockerfile links +The tag of each `mimir` docker image is consist of the version of `mimir` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[2.11.0-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mimir/2.11.0/22.03-lts-sp3/Dockerfile)| Grafana mimir 2.11.0 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/mimir` image from docker + + ```bash + docker pull openeuler/mimir:{Tag} + ``` + +- Start a mimir instance + + ```bash + docker run -d --name my-mimir -p 8080:8080 openeuler/mimir:{Tag} + ``` + After the instance `my-mimir` is started, access the Grafana Mimir service through `http://localhost:8080`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 8080:8080` | Expose Mimir server on `localhost:8080`. | + +- View container running logs + + ```bash + docker logs -f my-mimir + ``` -- 2.11.0-oe2203sp3: mimir v2.11.0, openEuler 22.03-LTS-SP3 +- To get an interactive shell -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. + ```bash + docker exec -it my-mimir /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/mlflow/README.md b/mlflow/README.md index a10b53531517e17b3203a858a1f1fd262ed746f2..e40ca700c08969b09feb4d1c6f47dd30cd0e5de4 100644 --- a/mlflow/README.md +++ b/mlflow/README.md @@ -1,37 +1,66 @@ -# Mlflow - # Quick reference -- The official mlflow docker image. +- The official MLflow docker image. + +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). + +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +# MLflow | openEuler +Current MLflow docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +MLflow, at its core, provides a suite of tools aimed at simplifying the ML workflow. It is tailored to assist ML practitioners throughout the various stages of ML development and deployment. Despite its expansive offerings, MLflow’s functionalities are rooted in several foundational components: -# Build reference +- [Tracking](https://mlflow.org/docs/latest/tracking.html#tracking): MLflow Tracking provides both an API and UI dedicated to the logging of parameters, code versions, metrics, and artifacts during the ML process. This centralized repository captures details such as parameters, metrics, artifacts, data, and environment configurations, giving teams insight into their models’ evolution over time. Whether working in standalone scripts, notebooks, or other environments, Tracking facilitates the logging of results either to local files or a server, making it easier to compare multiple runs across different users. -1. Build images and push: (you may need to replace "openeuler" with your own repo name.) -```shell -docker buildx build -t "openeuler/mlflow:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +- [Model Registry](https://mlflow.org/docs/latest/model-registry.html#registry): A systematic approach to model management, the Model Registry assists in handling different versions of models, discerning their current state, and ensuring smooth productionization. It offers a centralized model store, APIs, and UI to collaboratively manage an MLflow Model’s full lifecycle, including model lineage, versioning, aliasing, tagging, and annotations. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +- [MLflow Deployments for LLMs](https://mlflow.org/docs/latest/llms/deployments/index.html#deployments): This server, equipped with a set of standardized APIs, streamlines access to both SaaS and OSS LLM models. It serves as a unified interface, bolstering security through authenticated access, and offers a common set of APIs for prominent LLMs. -2. Run: +- [Evaluate](https://mlflow.org/docs/latest/models.html#model-evaluation): Designed for in-depth model analysis, this set of tools facilitates objective model comparison, be it traditional ML algorithms or cutting-edge LLMs. -Specify a port in your host so that you can access the Web UI at 127.0.0.1:{YOUR_PORT}. -```shell -docker run -it --name mlflow -p {YOUR_PORT}:5000 openeuler/mlflow:{TAG} -``` +- [Prompt Engineering UI](https://mlflow.org/docs/latest/llms/prompt-engineering/index.html#prompt-engineering): A dedicated environment for prompt engineering, this UI-centric component provides a space for prompt experimentation, refinement, evaluation, testing, and deployment. -If you want to store the data permanently, use parameter ```-v``` to specify a volume such as ```mlruns```. -```shell -docker run -it --name mlflow -p {YOUR_PORT}:5000 -v mlruns:/mlflow openeuler/mlflow:{TAG} -``` +- [Recipes](https://mlflow.org/docs/latest/recipes.html#recipes): Serving as a guide for structuring ML projects, Recipes, while offering recommendations, are focused on ensuring functional end results optimized for real-world deployment scenarios. + +- [Projects](https://mlflow.org/docs/latest/projects.html#projects): MLflow Projects standardize the packaging of ML code, workflows, and artifacts, akin to an executable. Each project, be it a directory with code or a Git repository, employs a descriptor or convention to define its dependencies and execution method. + +Learn more on [MLflow website](https://mlflow.org/docs/latest/introduction/index.html). # Supported tags and respective Dockerfile links +The tag of each mlflow docker image is consist of the version of mlflow and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[2.11.1-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mlflow/2.11.1/22.03-lts-sp3/Dockerfile)| MLflow 2.11.1 on openEuler 22.03-LTS-SP3 | amd64, arm64 | +|[2.13.1-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mlflow/2.13.1/22.03-lts-sp3/Dockerfile)| MLflow 2.13.1 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` based on their requirements. + +- Pull the `openeuler/mlflow` image from docker + + ```bash + docker pull openeuler/mlflow:{Tag} + ``` + +- Start a mlflow instance + + ```bash + docker run -d --name my-mlflow -p 5000:5000 openeuler/mlflow:{Tag} + ``` + After the instance `my-mlflow` is started, access the mlflow service through `http://localhost:5000`. + +- View container running logs + + ```bash + docker logs -f my-mlflow + ``` + +- To get an interactive shell -- 2.11.1-oe2203sp3: mlflow v2.11.1, openEuler 22.03-LTS-SP3 + ```bash + docker exec -it my-mlflow /bin/bash + ``` -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/mlflow/doc/image-info.yml b/mlflow/doc/image-info.yml index 3f305a3e5303b60340f4a8311572040520e7e23a..f1031401c122f672f0a36aaad5aae2b66b89bdef 100644 --- a/mlflow/doc/image-info.yml +++ b/mlflow/doc/image-info.yml @@ -11,7 +11,8 @@ tags: | | Tag | Currently | Architectures | |----------|-------------|------------------| - |[2.11.0-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mlflow/2.11.0/22.03-lts-sp3/Dockerfile)| MLflow 2.11.0 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + |[2.11.1-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mlflow/2.11.1/22.03-lts-sp3/Dockerfile)| MLflow 2.11.1 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + |[2.13.1-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mlflow/2.13.1/22.03-lts-sp3/Dockerfile)| MLflow 2.13.1 on openEuler 22.03-LTS-SP3 | amd64, arm64 | download: | 拉取镜像到本地 diff --git a/mlflow/meta.yml b/mlflow/meta.yml index 9e162829a211ac47c446ed0de8cfaed7105bc2ad..c7ee2f0b7f9048661d25c72fc3c66aef59e51315 100644 --- a/mlflow/meta.yml +++ b/mlflow/meta.yml @@ -1,2 +1,5 @@ 2.11.1-oe2203sp3: - mlflow/2.11.1/22.03-lts-sp3/Dockerfile \ No newline at end of file + mlflow/2.11.1/22.03-lts-sp3/Dockerfile + +2.13.1-oe2203sp3: + mlflow/2.13.1/22.03-lts-sp3/Dockerfile \ No newline at end of file diff --git a/mysql/README.md b/mysql/README.md index c4412d6ada1be085ad698bbcc30eabbc9a99379c..ff631d8d6d9cd613be2262a5338b4bc281a682c2 100644 --- a/mysql/README.md +++ b/mysql/README.md @@ -1,31 +1,62 @@ -# MySQL - # Quick reference -- The official mysql docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) - -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- The official MySQL docker image. -# Build reference +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -1. Build images and push: -```shell -docker buildx build -t "openeuler/mysql:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +# MySQL | openEuler +Current MySQL docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -2. Run: -```shell -docker run -d --name my-mysql -p 30306:3306 -e MYSQL_ROOT_PASSWORD=openEuler:S3cr3t/ openeuler/mysql:{Tag} -``` -where `mysql` is the name you want to assign to your container, `openEuler:S3cr3t/` is the password to be set for the MySQL root user. +Learn more on [MySQL website](). # Supported tags and respective Dockerfile links - -- 8.3.0-oe2203sp3: mysql v8.3.0, openEuler 22.03 LTS SP3 - -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +The tag of each mysql docker image is consist of the version of mysql and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[8.3.0-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/mysql/8.3.0/22.03-lts-sp3/Dockerfile)| MySQL server 8.3.0 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/mysql` image from docker + + ```bash + docker pull openeuler/mysql:{Tag} + ``` + +- Start a mysql instance + + ```bash + docker run -d --name my-mysql -p 30306:3306 -e MYSQL_ROOT_PASSWORD=openEuler:S3cr3t/ openeuler/mysql:{Tag} + ``` + After the instance `my-mysql` is started, access the mysql service through `http://localhost:30306`. + +- Container startup options + | Option | Description | + |--|--| + | `-p 30306:3306` | Expose MySQL server on `localhost:30306`. | + | `-e MYSQL_ROOT_PASSWORD` | Set the password for the `root` user. This option is **mandatory** and **must not be empty**. | + | `-e MYSQL_USER` | Create a new user with superuser privileges. This is used in conjunction with `MYSQL_PASSWORD`. | + | `-e MYSQL_DATABASE` | Set the name of the default database. | + | `-e MYSQL_ALLOW_EMPTY_PASSWORD=yes` | Set up a blank password for the root user. **This is not recommended to be used in production, make sure you know what you are doing**. | + | `-e MYSQL_RANDOM_ROOT_PASSWORD=yes` | Generate a random initial password for the `root` user using `pwgen`. It will be printed in the logs, search for `GENERATED ROOT PASSWORD`. | + | `-e MYSQL_ONETIME_PASSWORD=yes` | Set `root` user as experide once initialization is complete, forcing a password change on first login. | + | `-v /path/to/data:/usr/local/mysql/data/` | Persist data instead of initializing a new database every time you launch a new container. | + | `-v /path/to/config/files/:/usr/local/mysql/mysql.conf.d/` | Local [configuration files](https://dev.mysql.com/doc/refman/8.0/en/mysql-command-options.html). | + +- View container running logs + + ```bash + docker logs -f my-mysql + ``` + +- To get an interactive shell + + ```bash + docker exec -it my-mysql/bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/nginx/README.md b/nginx/README.md index ba26a710b71ad4ec51141bfe907b010ed53b386a..7641e41d9984b2cb83db1ba2bbfe7f593954310c 100644 --- a/nginx/README.md +++ b/nginx/README.md @@ -1,32 +1,68 @@ -# Nginx - # Quick reference - The official Nginx docker image. -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). + +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +# Nginx | openEuler +Current Nginx docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -# Build reference +Nginx (pronounced "engine-x") is an open source reverse proxy server for HTTP, HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache, and a web server (origin server). The nginx project started with a strong focus on high concurrency, high performance and low memory usage. It is licensed under the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X, Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of concept port for Microsoft Windows. Learn more on [https://en.wikipedia.org/wiki/Nginx](https://en.wikipedia.org/wiki/Nginx)⁠. -1. Build images and push: -```shell -docker buildx build -t "openeuler/nginx:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +Features: +- Nginx is easy to configure in order to serve static [web content](https://en.wikipedia.org/wiki/Web_content) or to act as a [proxy server](https://en.wikipedia.org/wiki/Proxy_server). -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +- Nginx can be deployed to also serve [dynamic content](https://en.wikipedia.org/wiki/Dynamic_web_pagehttps://en.wikipedia.org/wiki/Dynamic_web_page) on the network using [FastCGI](https://en.wikipedia.org/wiki/FastCGI), [SCGI](https://en.wikipedia.org/wiki/Simple_Common_Gateway_Interface) handlers for [scripts](https://en.wikipedia.org/wiki/Scripting_languagehttps://en.wikipedia.org/wiki/Scripting_language), [WSGI](https://en.wikipedia.org/wiki/Web_Server_Gateway_Interface) application servers or [Phusion Passenger](https://en.wikipedia.org/wiki/Phusion_Passenger) modules, and can serve as a software load balancer[load balancer](https://en.wikipedia.org/wiki/Load_balancing_%28computing%29). -2. Run: -```shell -docker run -d openeuler/nginx:$VERSION -``` +- Nginx uses an [asynchronous](https://en.wikipedia.org/wiki/Asynchronous_system) [event-driven](https://en.wikipedia.org/wiki/Event_%28computing%29) approach, rather than threads, to handle requests. Nginx's modular [event-driven architecture](https://en.wikipedia.org/wiki/Event-driven_architecture) can provide predictable performance under high loads. # Supported tags and respective Dockerfile links +The tag of each `nginx` docker image is consist of the version of `nginx` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[1.16.1-oe2003sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/nginx/1.16.1/20.03-lts-sp1/Dockerfile)| Nginx 1.16.1 on openEuler 20.03-LTS-SP1 | amd64, arm64 | +|[1.21.5-oe2203lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/nginx/1.21.5/22.03-lts/Dockerfile)| Nginx 1.21.5 on openEuler 22.03-LTS | amd64, arm64 | +|[1.25.4-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/nginx/1.25.4/22.03-lts-sp3/Dockerfile)| Nginx 1.25.4 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/nginx` image from docker + + ```bash + docker pull openeuler/nginx:{Tag} + ``` + +- Start a nginx instance + + ```bash + docker run -d --name my-nginx -p 8080:80 openeuler/nginx:{Tag} + ``` + After the instance `my-nginx` is started, access the Nginx service through `http://localhost:8080`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 8080:80` | Expose nginx on `localhost:8080`. | + | `-v /local/path/to/website:/var/www/html` | Mount and serve a local website. | + | `-v /path/to/conf.template:/etc/nginx/templates/conf.template` | Mount template files inside `/etc/nginx/templates`. They will be processed and the results will be placed at `/etc/nginx/conf.d`. (e.g. `listen ${NGINX_PORT}`; will generate `listen 80`). | + | `-v /path/to/nginx.conf:/etc/nginx/nginx.conf` | Local [configuration file](https://nginx.org/en/docs/)⁠ `nginx.conf`. | + +- View container running logs + + ```bash + docker logs -f my-nginx + ``` -- 1.16.1-oe2003sp1: nginx v1.16.1, openEuler 20.03 LTS SP1 -- 1.21.5-oe2203lts: nginx v1.21.5, openEuler 22.03 LTS -- 1.25.4-oe2203sp3: nginx v1.25.4, openEuler 22.03 LTS SP3 +- To get an interactive shell -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. + ```bash + docker exec -it my-nginx /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/openjdk/README.md b/openjdk/README.md index bf7c11909e5320d69cfc0655f540273d416d639d..d322263a545cff68a49ad56e4fe622d1a0f47ed4 100644 --- a/openjdk/README.md +++ b/openjdk/README.md @@ -1,30 +1,50 @@ -# OpenJdk - # Quick reference -- The official openjdk docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official OpenJDK docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/openjdk:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +# OpenJDK | openEuler +Current OpenJDK docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +The place to collaborate on an open-source implementation of the Java Platform, Standard Edition, and related projects. -2. Run: -```shell -docker run -it --name openjdk openeuler/openjdk:{TAG} -``` +Learn more about OpenJDK on the [https://openjdk.org/). # Supported tags and respective Dockerfile links +The tag of each `openjdk` docker image is consist of the version of `openjdk` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[23_13-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/openjdk/23+13/22.03-lts-sp3/Dockerfile)| OpenJDK 23+13 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` based on their requirements. + +- Pull the `openeuler/openjdk` image from docker + + ```bash + docker pull openeuler/openjdk:{Tag} + ``` + +- Start a openjdk instance + + ```bash + docker run -it --name my-openjdk openeuler/openjdk:{Tag} + ``` + +- View container running logs + + ```bash + docker logs -f my-openjdk + ``` -- 23+13-oe2203sp3: openjdk v23+13, openEuler 22.03 LTS SP3 +- To get an interactive shell -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. + ```bash + docker exec -it my-openjdk /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/postgres/README.md b/postgres/README.md index 9419231e300ed85734f2eb89345862f95a5d362f..5fedb9b95b6cedc6c574b66a1d1e773cd2172a11 100644 --- a/postgres/README.md +++ b/postgres/README.md @@ -1,44 +1,67 @@ -# PostgreSQL - # Quick reference -- The official openGauss-lite docker image. +- The official PostgreSQL docker image. + +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +# PostgreSQL | openEuler +Current PostgreSQL docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -# Build reference +PostgreSQL is a powerful, open source object-relational database system with over 35 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance. -1. Build images and push: -```shell -docker buildx build -t "openeuler/postgres:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +Learn more about PostgreSQL on the [PostgreSQL Website](https://www.postgresql.org/). -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +# Supported tags and respective Dockerfile links +The tag of each `postgres` docker image is consist of the version of `postgres` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[13.3-oe2203lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/postgres/13.3/22.03-lts/Dockerfile)| Postgres 13.3 on openEuler 22.03-LTS | amd64, arm64 | +|[16.2-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/postgres/1.25.4/22.03-lts-sp3/Dockerfile)| Postgres 16.2 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. -# How to use this image -## start a openGauss instance -```shell -docker run --name my_postgresql -d -e POSTGRES_PASSWORD=PostgreSQL@123 openeuler/postgres:13.3 -``` -The default postgres user and database are created in the entrypoint with initdb. +- Pull the `openeuler/postgres` image from docker -## connect database using gsql from os -```shell -docker run --name my_postgresql -d -e POSTGRES_PASSWORD=PostgreSQL@123 -p 5433:5432 openeuler/postgres:13.3 -psql -d postgres -U postgres -W 'PostgreSQL@123' -h host_ip -p 5433 -``` + ```bash + docker pull openeuler/postgres:{Tag} + ``` -## persist data to local storage -```shell -docker run --name my_postgresql -d -e POSTGRES_PASSWORD=PostgreSQL@123 -v /postgresql:/var/lib/pgsql/data openeuler/postgres:13.3 -``` +- Start a postgres instance -# Supported tags and respective Dockerfile links + ```bash + docker run -d --name my-postgres -p 30432:5432 -e POSTGRES_PASSWORD=PostgreSQL@123 openeuler/postgres:{Tag} + ``` + After the instance `my-postgres` is started, access the PostgreSQL service through `http://localhost:30432`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 30432:5432` | Expose PostgreSQL server on `localhost:30432`. | + | `-e POSTGRES_PASSWORD=passwd` | Set the password for the superuser which is `postgres` by default. Bear in mind that to connect to the database in the same host the password is not needed but to access it via an external host (for instance another container) the password is needed. This option is **mandatory and must not be empty**. | + | `-e POSTGRES_USER=postgres` | Create a new user with superuser privileges. This is used in conjunction with `POSTGRES_PASSWORD`. | + | `-e POSTGRES_INITDB_ARGS="--data-checksums"` | Pass arguments to the `postgres initdb` call. | + | `-e POSTGRES_DB=postgres` | Set the name of the default database. | + | `-e POSTGRES_INITDB_WALDIR` | Set the location of the Postgres transaction log. By default it is stored in a subdirectory of the main Postgres data folder (`PGDATA`). | + | `-e POSTGRES_HOST_AUTH_METHOD=trust` | Set the auth-method for `host` connections for `all` databases, `all` users, and `all` addresses. The following will be added to the `pg_hba.conf` if this option is passed: `host all all all $POSTGRES_HOST_AUTH_METHOD`. | + | `-e PGDATA=/path/to/location` | Set the location of the database files. The default is `/var/lib/postgresql/data`. | + | `-v /path/to/postgresql.conf:/etc/postgresql/postgresql.conf` | Local configuration file `postgresql.conf`. | + | `-v /path/to/persisted/data:/var/lib/postgresql/data` | Persist data instead of initializing a new database every time you launch a new container. | + +- View container running logs + + ```bash + docker logs -f my-postgres + ``` -- 13.3-oe2203lts: postgres v13.3, openEuler 22.03 LTS -- 16.2-oe2203sp3: postgres v16.2, openEuler 22.03 LTS SP3 +- To get an interactive shell -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. + ```bash + docker exec -it my-postgres /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/prometheus-pushgateway/README.md b/prometheus-pushgateway/README.md index 537c57569f21f5802f3b5eb8002b0e162a05fc38..f91bc35fd3bb6400bb2c6d69dd2a94284e2d2c82 100644 --- a/prometheus-pushgateway/README.md +++ b/prometheus-pushgateway/README.md @@ -1,30 +1,57 @@ -# Prometheus-pushgateway - # Quick reference -- The official prometheus-pushgateway docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official Prometheus-pushgateway docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/prometheus-pushgateway:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +# Prometheus-pushgateway | openEuler +Current Prometheus-pushgateway docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +The Pushgateway is an intermediary service which allows you to push metrics from jobs which cannot be scraped. For details, see [Pushing metrics](https://prometheus.io/docs/instrumenting/pushing/). -2. Run: -```shell -docker run -d -p 9091:9091 openeuler/prometheus-pushgateway:$TAG -``` +Learn more about Prometheus-pushgateway on the [Prometheus-pushgateway Website](https://prometheus.io/docs/practices/pushing/). # Supported tags and respective Dockerfile links +The tag of each `prometheus-pushgateway` docker image is consist of the version of `prometheus-pushgateway` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[1.7.0-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/prometheus-pushgateway/1.7.0/22.03-lts-sp3/Dockerfile)| Prometheus-pushgateway 1.7.0 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/prometheus-pushgateway` image from docker + + ```bash + docker pull openeuler/prometheus-pushgateway:{Tag} + ``` + +- Start a prometheus-pushgateway instance + + ```bash + docker run -d --name my-prometheus-pushgateway -p 9091:9091 openeuler/prometheus-pushgateway:{Tag} + ``` + After the instance `my-prometheus-pushgateway` is started, access the Prometheus-pushgateway service through `http://localhost:9091`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 9091:9091` | Expose Prometheus-pushgateway server on `localhost:9091`. | + +- View container running logs + + ```bash + docker logs -f my-prometheus-pushgateway + ``` + +- To get an interactive shell -- 1.7.0-oe2203sp3: prometheus-pushgateway v1.7.0, openEuler 22.03-LTS-SP3 + ```bash + docker exec -it my-prometheus-pushgateway /bin/bash + ``` -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/prometheus/README.md b/prometheus/README.md index 3e4d3411dc954b33477dd499f56282b5ea2fef43..235f41e86e51bfa647f8912cab6a7d58b74e8669 100644 --- a/prometheus/README.md +++ b/prometheus/README.md @@ -1,31 +1,60 @@ -# prometheus - # Quick reference -- The official prometheus docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official Prometheus docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/prometheus:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +# Prometheus | openEuler +Current Prometheus docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Prometheus is an open-source systems monitoring and alerting toolkit originally built at SoundCloud. Since its inception in 2012, many companies and organizations have adopted Prometheus, and the project has a very active developer and user community. It is now a standalone open source project and maintained independently of any company. To emphasize this, and to clarify the project's governance structure, Prometheus joined the Cloud Native Computing Foundation in 2016 as the second hosted project, after Kubernetes. -# How to use this image -```shell -docker run --name my_prometheus -d -p 9090:9090 openeuler/prometheus:$VERSION -``` +Learn more about Prometheus on the [Prometheus Website](https://prometheus.io/docs/introduction/overview/). # Supported tags and respective Dockerfile links +The tag of each `prometheus` docker image is consist of the version of `prometheus` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| + |[2.20.0-oe2203lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/prometheus/2.20.0/22.03-lts/Dockerfile)| Prometheus server 2.20.0 on openEuler 22.03-LTS | amd64, arm64 | + |[2.50.1-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/prometheus/2.50.1/22.03-lts-sp3/Dockerfile)| Prometheus server 2.50.1 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/prometheus` image from docker + + ```bash + docker pull openeuler/prometheus:{Tag} + ``` + +- Start a prometheus instance + + ```bash + docker run -d --name my-prometheus -p 9090:9090 openeuler/prometheus:{Tag} + ``` + After the instance `my-prometheus` is started, access the Prometheus service through `http://localhost:9090`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 9090:9090` | Expose Prometheus server on `localhost:9090`. | + | `-v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml` | Local configuration file `prometheus.yml`. | + | `-v /path/to/alerts.yml:/etc/prometheus/alerts.yml` | Local alerts configuration file `alerts.yml`. | + +- View container running logs + + ```bash + docker logs -f my-prometheus + ``` -- 2.20.0-oe2203lts: prometheus v2.20.0, openEuler 22.03 LTS -- 2.50.1-oe2203sp3: prometheus v2.50.1, openEuler 22.03 LTS SP3 +- To get an interactive shell -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. + ```bash + docker exec -it my-prometheus /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/redis/README.md b/redis/README.md index ff2211f7d8a9e240f4c2695f4a631b7e9f5b456b..e74cb27addcaede739ffd3764287619543deed5a 100644 --- a/redis/README.md +++ b/redis/README.md @@ -1,52 +1,104 @@ -#redis - - # Quick reference -- The official redis docker image. +- The official Redis docker image. + +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +# Redis | openEuler +Current Redis docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -# Build reference +Redis is the world’s fastest in-memory database. It provides cloud and on-prem solutions for caching, vector search, and NoSQL databases that seamlessly fit into any tech stack—making it simple for digital customers to build, scale, and deploy the fast apps our world runs on. Learn more on the [Redis website](https://redis.io/about/)⁠. -1. Build images and push: -```shell -docker buildx build -t "openeuler/redis:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +- License +Starting on March 20th, 2024, Redis follows a dual-licensing model with the choice of the [Redis Source Available License v2 - RSALv2](https://redis.io/legal/rsalv2-agreement/)⁠ or the [Server Side Public License v1 - SSPLv1](https://redis.io/legal/server-side-public-license-sspl/)⁠. Older versions of Redis (<=7.2.4) are licensed under ⁠[3-Clause BSD](https://opensource.org/license/bsd-3-clause). -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Please also view the ⁠[Redis License Overview](https://redis.io/legal/licenses/) and the [Redis Trademark Policy](https://redis.io/legal/trademark-policy/)⁠. -# How to use this image -## start a redis instance -```shell -docker run --name my-redis -d openeuler/redis:{TAG} -``` +- Redis data structures -## Start with persistent storage -```shell -docker run --name my-redis -d openeuler/redis:{TAG} redis-server --save 60 1 --loglevel warning -``` -As shows above, this will save a snapshot of the DB every 60 seconds if at least 1 write operation was performed. + - [strings](https://redis.io/docs/latest/develop/data-types/strings/) + - [hashes](https://redis.io/docs/latest/develop/data-types/hashes/) + - [lists](https://redis.io/glossary/lists-in-redis/) + - [sets](https://redis.io/docs/latest/develop/data-types/sets/) + - [sorted-sets](https://redis.io/docs/latest/develop/data-types/sorted-sets/) + - [bitmaps](https://redis.io/docs/latest/develop/data-types/bitmaps/) + - [hyperloglogs](https://redis.io/docs/latest/develop/data-types/probabilistic/hyperloglogs/) + - [geospatial-indexes](https://redis.io/glossary/geospatial-indexing/) + - [streams](https://redis.io/docs/latest/develop/data-types/streams/) -## connect to a redis instance -Connect to a local redis instance using loopback address -```shell -docker run --name my-redis -d -p 6379:6379 openeuler/redis:{TAG} -redis-cli -h 127.0.0.1 -p 6379 -``` +- Redis data persistences -If you want connect the redis instance using hostip, you should connect to the instance using loopback, -and then configure as belows -```shell -config set protected-mode no -``` + - [dumping the dataset to disk](https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/#snapshotting) + - [appending each command to a disk-based log](https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/#append-only-file) # Supported tags and respective Dockerfile links +The tag of each redis docker image is consist of the version of redis and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[6.2.7-oe2203lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/redis/6.2.7/22.03-lts/Dockerfile)| Redis 6.2.7 on openEuler 22.03-LTS | amd64, arm64 | +|[7.2.4-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/redis/7.2.4/22.03-lts-sp3/Dockerfile)| Redis 7.2.4 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/redis` image from docker + + ```bash + docker pull openeuler/redis:{Tag} + ``` + +- Start a redis instance + + ```bash + docker run -d --name my-redis -p 6379:6379 openeuler/redis:{Tag} + ``` + +- Start with persistent storage + + As follows, this will save a snapshot of the DB every 60 seconds if at least 1 write operation was performed. + ```shell + docker run --name my-redis -d openeuler/redis:{Tag} redis-server --save 60 1 --loglevel warning + ``` + +- Connect to a redis instance + + Connect to a local redis instance using loopback address + ```shell + docker run --name my-redis -d -p 6379:6379 openeuler/redis:{Tag} + redis-cli -h 127.0.0.1 -p 6379 + ``` + If you want connect the redis instance using hostip, you should connect to the instance using loopback, + and then configure as belows + + ```bash + config set protected-mode no + ``` + +- Container startup options + + | Option | Description | + |--|--| + | `-p 6379:6379` | Expose Redis server on `localhost:6379`. | + | `-e ALLOW_EMPTY_PASSWORD=yes` | Set to `yes` to allow connections to redis-server without a password. **This setting is not recommended in production environments**. | + | `-e REDIS_PASSWORD` | Set the desired password to be used. | + | `-e REDIS_RANDOM_PASSWORD=1` | Set this variable to `1` if you would like the entrypoint script to generate a random password for you. You will be able to see the generated password in the logs (`docker logs`). | + | `-e REDIS_ALLOW_REMOTE_CONNECTIONS=yes` | Set to `no` to disallow remote connections to `redis-server` (i.e., make `redis-server` listen to `127.0.0.1` only). | + | `-e REDIS_EXTRA_FLAGS` | Specify extra flags to be passed to `redis-server` when initializing it. | + | `-v /path/to/redis.conf:/etc/redis/redis.conf` | Local [configuration file](https://redis.io/docs/latest/operate/oss_and_stack/management/config/) `redis.conf`. **To enable TLS** mode, comment the `port 6379` line and uncomment the `# port 0` and `# tls-port 6379` lines. | + +- View container running logs + + ```bash + docker logs -f my-redis + ``` + +- To get an interactive shell -- 6.2.7-oe2203lts: redis v6.2.7, openEuler 22.03 LTS -- 7.2.4-oe2203sp3: redis v7.2.4, openEuler 22.03 LTS SP3 + ```bash + docker exec -it my-redis /bin/bash + ``` -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/spark/3.5.1/24.03-lts/Dockerfile b/spark/3.5.1/24.03-lts/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..77de779bd1b24c0bef4e057d1cd600ca7beab0f4 --- /dev/null +++ b/spark/3.5.1/24.03-lts/Dockerfile @@ -0,0 +1,80 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +FROM openeuler/openeuler:24.03-lts + +ARG spark_uid=185 + + +RUN set -ex && \ + dnf update -y && \ + ln -s /lib /lib64 && \ + dnf install -y gnupg2 wget bash krb5 procps net-tools shadow dpkg java-11-openjdk && \ + groupadd --system --gid=${spark_uid} spark && \ + useradd --system --uid=${spark_uid} --gid=spark spark && \ + dnf install -y python3 python3-pip && \ + mkdir -p /opt/spark && \ + mkdir /opt/spark/python && \ + mkdir -p /opt/spark/examples && \ + mkdir -p /opt/spark/work-dir && \ + touch /opt/spark/RELEASE && \ + chown -R spark:spark /opt/spark && \ + rm /bin/sh && \ + ln -sv /bin/bash /bin/sh && \ + echo "auth required pam_wheel.so use_uid" >> /etc/pam.d/su && \ + chgrp root /etc/passwd && chmod ug+rw /etc/passwd && \ + rm -rf /var/cache/dnf/* + +# Grab gosu for easy step-down from root +ENV GOSU_VERSION 1.14 +RUN set -ex; \ + wget -nv -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture)"; \ + chmod +x /usr/local/bin/gosu; \ + gosu nobody true +# Install Apache Spark +# https://downloads.apache.org/spark/KEYS +ENV SPARK_TGZ_URL=https://archive.apache.org/dist/spark/spark-3.5.1/spark-3.5.1-bin-hadoop3.tgz \ + SPARK_TGZ_ASC_URL=https://archive.apache.org/dist/spark/spark-3.5.1/spark-3.5.1-bin-hadoop3.tgz.asc + +RUN set -ex; \ + export SPARK_TMP="$(mktemp -d)"; \ + cd $SPARK_TMP; \ + wget -nv -O spark.tgz "$SPARK_TGZ_URL"; \ + \ + tar -xf spark.tgz --strip-components=1; \ + chown -R spark:spark .; \ + mv jars /opt/spark/; \ + mv bin /opt/spark/; \ + mv sbin /opt/spark/; \ + mv kubernetes/dockerfiles/spark/decom.sh /opt/; \ + mv examples /opt/spark/; \ + mv kubernetes/tests /opt/spark/; \ + mv data /opt/spark/; \ + mv python/pyspark /opt/spark/python/pyspark/; \ + mv python/lib /opt/spark/python/lib/; \ + cd ..; \ + rm -rf "$SPARK_TMP"; + +COPY entrypoint.sh /opt/ + +ENV SPARK_HOME /opt/spark + +WORKDIR /opt/spark/work-dir +RUN chmod g+w /opt/spark/work-dir +RUN chmod a+x /opt/decom.sh +RUN chmod a+x /opt/entrypoint.sh + +ENTRYPOINT [ "/opt/entrypoint.sh" ] diff --git a/spark/3.5.1/24.03-lts/entrypoint.sh b/spark/3.5.1/24.03-lts/entrypoint.sh new file mode 100644 index 0000000000000000000000000000000000000000..6a5c6d2d1d9dba4f5e4f42a39553b56e07792a75 --- /dev/null +++ b/spark/3.5.1/24.03-lts/entrypoint.sh @@ -0,0 +1,130 @@ +#!/bin/bash +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Prevent any errors from being silently ignored +set -eo pipefail + +attempt_setup_fake_passwd_entry() { + # Check whether there is a passwd entry for the container UID + local myuid; myuid="$(id -u)" + # If there is no passwd entry for the container UID, attempt to fake one + # You can also refer to the https://github.com/docker-library/official-images/pull/13089#issuecomment-1534706523 + # It's to resolve OpenShift random UID case. + # See also: https://github.com/docker-library/postgres/pull/448 + if ! getent passwd "$myuid" &> /dev/null; then + local wrapper + for wrapper in {/usr,}/lib{/*,}/libnss_wrapper.so; do + if [ -s "$wrapper" ]; then + NSS_WRAPPER_PASSWD="$(mktemp)" + NSS_WRAPPER_GROUP="$(mktemp)" + export LD_PRELOAD="$wrapper" NSS_WRAPPER_PASSWD NSS_WRAPPER_GROUP + local mygid; mygid="$(id -g)" + printf 'spark:x:%s:%s:${SPARK_USER_NAME:-anonymous uid}:%s:/bin/false\n' "$myuid" "$mygid" "$SPARK_HOME" > "$NSS_WRAPPER_PASSWD" + printf 'spark:x:%s:\n' "$mygid" > "$NSS_WRAPPER_GROUP" + break + fi + done + fi +} + +if [ -z "$JAVA_HOME" ]; then + JAVA_HOME=$(java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home' | awk '{print $3}') +fi + +SPARK_CLASSPATH="$SPARK_CLASSPATH:${SPARK_HOME}/jars/*" +for v in "${!SPARK_JAVA_OPT_@}"; do + SPARK_EXECUTOR_JAVA_OPTS+=( "${!v}" ) +done + +if [ -n "$SPARK_EXTRA_CLASSPATH" ]; then + SPARK_CLASSPATH="$SPARK_CLASSPATH:$SPARK_EXTRA_CLASSPATH" +fi + +if ! [ -z "${PYSPARK_PYTHON+x}" ]; then + export PYSPARK_PYTHON +fi +if ! [ -z "${PYSPARK_DRIVER_PYTHON+x}" ]; then + export PYSPARK_DRIVER_PYTHON +fi + +# If HADOOP_HOME is set and SPARK_DIST_CLASSPATH is not set, set it here so Hadoop jars are available to the executor. +# It does not set SPARK_DIST_CLASSPATH if already set, to avoid overriding customizations of this value from elsewhere e.g. Docker/K8s. +if [ -n "${HADOOP_HOME}" ] && [ -z "${SPARK_DIST_CLASSPATH}" ]; then + export SPARK_DIST_CLASSPATH="$($HADOOP_HOME/bin/hadoop classpath)" +fi + +if ! [ -z "${HADOOP_CONF_DIR+x}" ]; then + SPARK_CLASSPATH="$HADOOP_CONF_DIR:$SPARK_CLASSPATH"; +fi + +if ! [ -z "${SPARK_CONF_DIR+x}" ]; then + SPARK_CLASSPATH="$SPARK_CONF_DIR:$SPARK_CLASSPATH"; +elif ! [ -z "${SPARK_HOME+x}" ]; then + SPARK_CLASSPATH="$SPARK_HOME/conf:$SPARK_CLASSPATH"; +fi + +# SPARK-43540: add current working directory into executor classpath +SPARK_CLASSPATH="$SPARK_CLASSPATH:$PWD" + +# Switch to spark if no USER specified (root by default) otherwise use USER directly +switch_spark_if_root() { + if [ $(id -u) -eq 0 ]; then + echo gosu spark + fi +} + +case "$1" in + driver) + shift 1 + CMD=( + "$SPARK_HOME/bin/spark-submit" + --conf "spark.driver.bindAddress=$SPARK_DRIVER_BIND_ADDRESS" + --conf "spark.executorEnv.SPARK_DRIVER_POD_IP=$SPARK_DRIVER_BIND_ADDRESS" + --deploy-mode client + "$@" + ) + attempt_setup_fake_passwd_entry + # Execute the container CMD under tini for better hygiene + exec $(switch_spark_if_root) /usr/bin/tini -s -- "${CMD[@]}" + ;; + executor) + shift 1 + CMD=( + ${JAVA_HOME}/bin/java + "${SPARK_EXECUTOR_JAVA_OPTS[@]}" + -Xms"$SPARK_EXECUTOR_MEMORY" + -Xmx"$SPARK_EXECUTOR_MEMORY" + -cp "$SPARK_CLASSPATH:$SPARK_DIST_CLASSPATH" + org.apache.spark.scheduler.cluster.k8s.KubernetesExecutorBackend + --driver-url "$SPARK_DRIVER_URL" + --executor-id "$SPARK_EXECUTOR_ID" + --cores "$SPARK_EXECUTOR_CORES" + --app-id "$SPARK_APPLICATION_ID" + --hostname "$SPARK_EXECUTOR_POD_IP" + --resourceProfileId "$SPARK_RESOURCE_PROFILE_ID" + --podName "$SPARK_EXECUTOR_POD_NAME" + ) + attempt_setup_fake_passwd_entry + # Execute the container CMD under tini for better hygiene + exec $(switch_spark_if_root) /usr/bin/tini -s -- "${CMD[@]}" + ;; + + *) + # Non-spark-on-k8s command provided, proceeding in pass-through mode... + exec "$@" + ;; +esac \ No newline at end of file diff --git a/spark/README.md b/spark/README.md index 6c64cd525eedcd9b526047db3efb8a5500b2faef..d5f24297b1fa0d28185f171c4632b4374f941301 100644 --- a/spark/README.md +++ b/spark/README.md @@ -1,32 +1,71 @@ -# Spark - # Quick reference -- The Apache Spark docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official Spark docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/spark:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +# Spark | openEuler +Current Spark docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Apache Spark is a multi-language engine for executing data engineering, data science, and machine learning on single-node machines or clusters. It provides high-level APIs in Scala, Java, Python, and R, and an optimized engine that supports general computation graphs for data analysis. It also supports a rich set of higher-level tools including Spark SQL for SQL and DataFrames, pandas API on Spark for pandas workloads, MLlib for machine learning, GraphX for graph processing, and Structured Streaming for stream processing. -2. Run: -```shell -docker run -d openeuler/spark:$VERSION -``` +Learn more on [Spark website](https://spark.apache.org/). # Supported tags and respective Dockerfile links +The tag of each spark docker image is consist of the version of spark and the version of basic image. The details are as follows +| Tags | Currently | Architectures| +|--|--|--| +|[3.3.1-22.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.3.1/22.03-lts/Dockerfile)| spark 3.3.1 on openEuler 22.03-LTS | amd64, arm64 | +|[3.3.2-22.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.3.2/22.03-lts/Dockerfile)| spark 3.3.2 on openEuler 22.03-LTS | amd64, arm64 | +|[3.4.0-22.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.4.0/22.03-lts/Dockerfile)| spark 3.4.0 on openEuler 22.03-LTS | amd64, arm64 | +|[3.5.1-24.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.5.1/24.03-lts/Dockerfile)| spark 3.5.1 on openEuler 24.03-LTS | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` based on their requirements. + +- Online Documentation + + You can find the latest Spark documentation, including a programming guide, on the [project web page](https://spark.apache.org/documentation.html). This README file only contains basic setup instructions. + +- Pull the `openeuler/spark` image from docker + + ```bash + docker pull openeuler/spark:{Tag} + ``` + +- Interactive Scala Shell + + The easiest way to start using Spark is through the Scala shell: + ```bash + docker run -it --name spark openeuler/spark:{Tag} /opt/spark/bin/spark-shell + ``` + Try the following command, which should return 1,000,000,000: + + ```bash + scala> spark.range(1000 * 1000 * 1000).count() + ``` + +- Interactive Python Shell + + The easiest way to start using PySpark is through the Python shell: + ```bash + docker run -it --name spark openeuler/spark:{Tag} /opt/spark/bin/pyspark + ``` + And run the following command, which should also return 1,000,000,000: + + ```bash + >>> spark.range(1000 * 1000 * 1000).count() + ``` + +- Running Spark on Kubernetes + + [https://spark.apache.org/docs/latest/running-on-kubernetes.html⁠](https://spark.apache.org/docs/latest/running-on-kubernetes.html). + +- Configuration and environment variables -- 3.3.1-22.03-lts: spark 3.3.1, openEuler 22.03 LTS -- 3.3.2-22.03-lts: spark 3.3.2, openEuler 22.03 LTS -- 3.4.0-22.03-lts: spark 3.4.0, openEuler 22.03 LTS + See more in [https://github.com/apache/spark-docker/blob/master/OVERVIEW.md#environment-variable](https://github.com/apache/spark-docker/blob/master/OVERVIEW.md#environment-variable). -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/spark/doc/image-info.yml b/spark/doc/image-info.yml index 97c17fffbe5e2a607b7b70b5992f700e4758dd41..b48d0b07879a68720695a055d812c1272ec3e2a2 100644 --- a/spark/doc/image-info.yml +++ b/spark/doc/image-info.yml @@ -14,6 +14,7 @@ tags: | |[3.3.1-22.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.3.1/22.03-lts/Dockerfile)| spark 3.3.1 on openEuler 22.03-LTS | amd64, arm64 | |[3.3.2-22.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.3.2/22.03-lts/Dockerfile)| spark 3.3.2 on openEuler 22.03-LTS | amd64, arm64 | |[3.4.0-22.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.4.0/22.03-lts/Dockerfile)| spark 3.4.0 on openEuler 22.03-LTS | amd64, arm64 | + |[3.5.1-24.03-lts](https://gitee.com/openeuler/openeuler-docker-images/blob/master/spark/3.5.1/24.03-lts/Dockerfile)| spark 3.5.1 on openEuler 24.03-LTS | amd64, arm64 | download: | 拉取镜像到本地 diff --git a/spark/meta.yml b/spark/meta.yml index a6ca5578bb029838b562af5f2beecd7fe5b04bf7..b4a950c82a39932ceb7bff5649d6e97933d12396 100644 --- a/spark/meta.yml +++ b/spark/meta.yml @@ -1,8 +1,11 @@ -1.16.1-oe2203lts: +3.3.1-oe2203lts: spark/3.3.1/22.03-lts/Dockerfile -1.21.5-oe2203lts: +3.3.2-oe2203lts: spark/3.3.2/22.03-lts/Dockerfile -1.25.4-oe2203lts: - spark/3.4.0/22.03-lts/Dockerfile \ No newline at end of file +3.4.0-oe2203lts: + spark/3.4.0/22.03-lts/Dockerfile + +3.5.1-oe2403lts: + spark/3.5.1/24.03-lts/Dockerfile \ No newline at end of file diff --git a/squid/README.md b/squid/README.md index 730b32e81b0a37254d63928650f74412017584a8..5136f0b79f648153fc784640a837ab1953f16361 100644 --- a/squid/README.md +++ b/squid/README.md @@ -1,30 +1,61 @@ -# squid - # Quick reference -- The official squid docker image. - -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- The official Squid docker image. -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/squid:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +# Squid | openEuler +Current Squid docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on most available operating systems, including Windows and is licensed under the GNU GPL. -2. Run: -```shell -docker run -d --name squid -p 3128:3128 openeuler/squid:$TAG -``` +Learn more on [Squid website](https://www.squid-cache.org/). # Supported tags and respective Dockerfile links +The tag of each `squid` docker image is consist of the version of `squid` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[6.8-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/squid/6.8/22.03-lts-sp3/Dockerfile)| Squid 6.8 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/squid` image from docker + + ```bash + docker pull openeuler/squid:{Tag} + ``` + +- Start a squid instance + + ```bash + docker run -d --name my-squid -p 3128:3128 openeuler/squid:{Tag} + ``` + After the instance `my-squid` is started, access the Squid service through `http://localhost:3128`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 3128:3128` | Expose squid on `localhost:3128`. | + | `-v /path/to/logs:/var/log/squid` | Volume to store squid logs | + | `-v /path/to/data:/var/spool/squid` | Volume to store the squid cache | + | `-v /path/to/main/config:/usr/local/squid/etc/squid.conf` | Main squid configuration file | + | `-v /path/to/config/snippet:/usr/local/squid/etc/conf.d/snippet.conf` | Configuration snippets included by squid.conf | + +- View container running logs + + ```bash + docker logs -f my-squid + ``` + +- To get an interactive shell -- 6.8-oe2203sp3: squid v6.8, openEuler 22.03 LTS SP3 + ```bash + docker exec -it my-squid /bin/bash + ``` -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/telegraf/README.md b/telegraf/README.md index f35db0ed391db2c0a587f838a83c625436b0d2a0..e9937412cd51fa2047808d17a46afdeb040b68c5 100644 --- a/telegraf/README.md +++ b/telegraf/README.md @@ -1,31 +1,58 @@ -# Telegraf - # Quick reference -- The official telegraf docker image. +- The official Telegraf docker image. -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -# Build reference +# Telegraf | openEuler +Current Telegraf docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -1. Build images and push: -```shell -docker buildx build -t "openeuler/telegraf:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +Telegraf, a server-based agent, collects and sends metrics and events from databases, systems, and IoT sensors. Written in Go, Telegraf compiles into a single binary with no external dependencies–requiring very minimal memory. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Learn more on [Telegraf website](https://docs.influxdata.com/telegraf/v1/). -2. Run: +# Supported tags and respective Dockerfile links +The tag of each `telegraf` docker image is consist of the version of `telegraf` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[1.29.5-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/telegraf/1.29.5/22.03-lts-sp3/Dockerfile)| Telegraf 1.29.5 on openEuler 22.03-LTS-SP3 | amd64, arm64 | -```shell -docker run --name telegraf -d -v /your-path/telegraf.conf:/etc/telegraf/telegraf.conf openeuler/telegraf:{TAG} -``` +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. -# Supported tags and respective Dockerfile links +- Pull the `openeuler/telegraf` image from docker + + ```bash + docker pull openeuler/telegraf:{Tag} + ``` + +- Start a telegraf instance + + ```bash + docker run -d --name my-telegraf -p 8094:8094 -v /path/to/telegraf.conf:/etc/telegraf/telegraf.conf openeuler/telegraf:{Tag} + ``` + After the instance `my-telegraf` is started, access the Telegraf service through `http://localhost:8094`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 8094:8094` | Expose telegraf on `localhost:8094`. | + | `-v /path/to/telegraf.conf:/etc/telegraf/telegraf.conf` | Local [configuration file](https://docs.influxdata.com/telegraf/v1/)⁠ `telegraf.conf`. | + +- View container running logs + + ```bash + docker logs -f my-telegraf + ``` -- 1.29.5-oe2203sp3: telegraf v1.29.5, openEuler 22.03 LTS SP3 +- To get an interactive shell -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. + ```bash + docker exec -it my-telegraf /bin/bash + ``` + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/traefik/README.md b/traefik/README.md index 73b1ed17b0c0a788bd615c604924cf3f7deba1d6..83ea8b13b3e13225b49f3d8d9252dfae2dde8571 100644 --- a/traefik/README.md +++ b/traefik/README.md @@ -1,30 +1,58 @@ -# Traefik - # Quick reference - The official Traefik docker image. -- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) - -- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -# Build reference +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -1. Build images and push: -```shell -docker buildx build -t "openeuler/traefik:$TAG" --platform linux/amd64,linux/arm64 . --push -``` +# Traefik | openEuler +Current Traefik docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Traefik (pronounced traffic) is a modern HTTP reverse proxy and load balancer that makes deploying microservices easy. Traefik integrates with your existing infrastructure components and configures itself automatically and dynamically. Pointing Traefik at your orchestrator should be the only configuration step you need. -2. Run: -```shell -docker run -d -p 80:80 openeuler/traefik:{TAG} -``` +Learn more about Traefik on the [Traefik Website](https://doc.traefik.io/). # Supported tags and respective Dockerfile links +The tag of each `traefik` docker image is consist of the version of `traefik` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[2.11.0-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/traefik/2.11.0/22.03-lts-sp3/Dockerfile)| Traefik 2.11.0 on openEuler 22.03-LTS-SP3 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. + +- Pull the `openeuler/traefik` image from docker + + ```bash + docker pull openeuler/traefik:{Tag} + ``` + +- Start a traefik instance + + ```bash + docker run -d --name my-traefik -p 80:80 openeuler/traefik:{Tag} + ``` + After the instance `my-traefik` is started, access the Traefik service through `http://localhost:80`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 80:80` | Expose Traefik server on `localhost:80`. | + | `-v /path/to/traefik.yml:/etc/traefik/traefik.yml` | Local Traefik configuration file. | + +- View container running logs + + ```bash + docker logs -f my-traefik + ``` + +- To get an interactive shell -- 2.11.0-oe2203sp3: traefik v2.11.0, openEuler 22.03-LTS-SP3 + ```bash + docker exec -it my-traefik /bin/bash + ``` -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/zookeeper/README.md b/zookeeper/README.md index 21a8bf9afeeceb0006c0ea5d688fccca1c53d7af..eef8a9318e85bd93d11335a0429343c5d06294a1 100644 --- a/zookeeper/README.md +++ b/zookeeper/README.md @@ -1,31 +1,60 @@ -# ZooKeeper - # Quick reference -- The official ZooKeeper docker image. +- The official Zookeeper docker image. -- Maintained by: [openEuler BigData SIG](https://gitee.com/openeuler/bigdata) +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). -- Where to get help: [openEuler BigData SIG](https://gitee.com/openeuler/bigdata), [openEuler](https://gitee.com/openeuler/community) +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). -# Build reference +# Zookeeper | openEuler +Current Zookeeper docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. -1. Build images and push: -```shell -docker buildx build -t "openeuler/zookeeper:$VERSION" --platform linux/amd64,linux/arm64 . --push -``` +ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All of these kinds of services are used in some form or another by distributed applications. Each time they are implemented there is a lot of work that goes into fixing the bugs and race conditions that are inevitable. Because of the difficulty of implementing these kinds of services, applications initially usually skimp on them, which make them brittle in the presence of change and difficult to manage. Even when done correctly, different implementations of these services lead to management complexity when the applications are deployed. -We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) +Learn more about ZooKeeper on the [ZooKeeper Wiki](https://cwiki.apache.org/confluence/display/ZOOKEEPER/Index). -# How to use this image +# Supported tags and respective Dockerfile links +The tag of each `zookeeper` docker image is consist of the version of `zookeeper` and the version of basic image. The details are as follows +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[3.8.3-oe2203sp3](https://gitee.com/openeuler/openeuler-docker-images/blob/master/zookeeper/3.8.3/22.03-lts-sp3/Dockerfile)| zookeeper 3.8.3 on openEuler 22.03-LTS-SP3 | amd64, arm64 | -```shell -docker run --name zookeeper --restart always -p 2181:2181 -d openeuler/zookeeper:{TAG} -``` +# Usage +In this usage, users can select the corresponding `{Tag}` and `container startup options` based on their requirements. -# Supported tags and respective Dockerfile links +- Pull the `openeuler/zookeeper` image from docker + + ```bash + docker pull openeuler/zookeeper:{Tag} + ``` + +- Start a zookeeper instance + + ```bash + docker run -d --name my-zookeeper -p 2181:2181 openeuler/zookeeper:{Tag} + ``` + After the instance `my-zookeeper` is started, access the Zookeeper service through `http://localhost:2181`. + +- Container startup options + + | Option | Description | + |--|--| + | `-p 2181:2181` | Expose ZooKeeper server on `localhost:2181`. | + | `-v /path/to/config/file:/etc/zookeeper/zoo.cfg` | Local ZooKeeper configuration file. | + | `-v zookeeperData:/var/lib/zookeeper/data` | Persist data in a docker volume named `zookeeperData`. Make sure that the mount point is consistent with the configuration property `dataDir`. | + | `-v zookeeperLogData:/var/lib/zookeeper/data-log` | Persist data in a docker volume named `zookeeperLogData`. Make sure that the mount point is consistent with the configuration property `dataLogDir`. | + +- View container running logs + + ```bash + docker logs -f my-zookeeper + ``` + +- To get an interactive shell -- 3.8.3-oe2203sp3: zookeeper v3.8.3, openEuler 22.03-LTS-SP3 + ```bash + docker exec -it my-zookeeper /bin/bash + ``` -## Operating System -Linux/Unix, ARM64 or x86-64 architecture. \ No newline at end of file +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file