diff --git a/dockerfiles/README.md b/dockerfiles/README.md index 8a81f0a8649..0f9bccfa92c 100644 --- a/dockerfiles/README.md +++ b/dockerfiles/README.md @@ -32,13 +32,13 @@ Where:
* `MLRUN_DOCKER_REGISTRY` is the docker registry (e.g. `quay.io/`, `gcr.io/`, defaults to empty (docker hub)) -For example, running `MLRUN_VERSION=1.0.3 make docker-images` will generate the following images: - * `mlrun/mlrun-api:1.0.3` - * `mlrun/mlrun:1.0.3` - * `mlrun/jupyter:1.0.3` - * `mlrun/ml-base:1.0.3` - * `mlrun/ml-models:1.0.3` - * `mlrun/ml-models-gpu:1.0.3` +For example, running `MLRUN_VERSION=1.0.4 make docker-images` will generate the following images: + * `mlrun/mlrun-api:1.0.4` + * `mlrun/mlrun:1.0.4` + * `mlrun/jupyter:1.0.4` + * `mlrun/ml-base:1.0.4` + * `mlrun/ml-models:1.0.4` + * `mlrun/ml-models-gpu:1.0.4` It's also possible to build only a specific image - `make api` (will build only the api image)
Or a set of images - `make mlrun jupyter base` diff --git a/docs/cli.md b/docs/cli.md index 25c7597e059..867e12665cb 100644 --- a/docs/cli.md +++ b/docs/cli.md @@ -242,7 +242,7 @@ spec: image: .mlrun/func-default-remote-demo-ps-latest image_pull_policy: Always build: - base_image: mlrun/mlrun:1.0.3 + base_image: mlrun/mlrun:1.0.4 source: git://github.com/mlrun/mlrun ``` @@ -272,7 +272,7 @@ spec: image_pull_policy: Always build: commands: [] - base_image: mlrun/mlrun:1.0.3 + base_image: mlrun/mlrun:1.0.4 source: git://github.com/mlrun/ci-demo.git ``` @@ -300,7 +300,7 @@ spec: image_pull_policy: Always build: commands: [] - base_image: mlrun/mlrun:1.0.3 + base_image: mlrun/mlrun:1.0.4 ``` Next, run the following MLRun CLI command to build the function; replace the `<...>` placeholders to match your configuration: diff --git a/docs/install/compose.with-jupyter.yaml b/docs/install/compose.with-jupyter.yaml index 6533a963250..d7da794008d 100644 --- a/docs/install/compose.with-jupyter.yaml +++ b/docs/install/compose.with-jupyter.yaml @@ -1,6 +1,6 @@ services: jupyter: - image: "mlrun/jupyter:${TAG:-1.0.3}" + image: "mlrun/jupyter:${TAG:-1.0.4}" ports: - "8080:8080" - "8888:8888" @@ -16,7 +16,7 @@ services: - mlrun mlrun-ui: - image: "mlrun/mlrun-ui:${TAG:-1.0.3}" + image: "mlrun/mlrun-ui:${TAG:-1.0.4}" ports: - "8060:80" environment: diff --git a/docs/install/compose.yaml b/docs/install/compose.yaml index 2dfaa795615..bcf31bd1602 100644 --- a/docs/install/compose.yaml +++ b/docs/install/compose.yaml @@ -1,6 +1,6 @@ services: mlrun-api: - image: "mlrun/mlrun-api:${TAG:-1.0.3}" + image: "mlrun/mlrun-api:${TAG:-1.0.4}" ports: - "8080:8080" environment: @@ -17,7 +17,7 @@ services: - mlrun mlrun-ui: - image: "mlrun/mlrun-ui:${TAG:-1.0.3}" + image: "mlrun/mlrun-ui:${TAG:-1.0.4}" ports: - "8060:80" environment: diff --git a/docs/runtimes/images.md b/docs/runtimes/images.md index d1f2dfe145f..35364b0b5a5 100644 --- a/docs/runtimes/images.md +++ b/docs/runtimes/images.md @@ -18,12 +18,12 @@ See [README](https://github.com/mlrun/mlrun/blob/development/dockerfiles/README. ## MLRun images and external docker images There is no difference in the usage between the MLRun images and external docker images. However: -- MLRun images resolve auto tags: If you specify ```image="mlrun/mlrun"``` the API fills in the tag by the client version, e.g. changes it to `mlrun/mlrun:1.0.3`. So, if the client gets upgraded you'll automatically get a new image tag. -- Where the data node registry exists, MLRun: Appends the registry prefix, so the image loads from the datanode registry. This pulls the image more quickly, and also supports air-gapped sites. When you specify an MLRun image, for example `mlrun/mlrun:1.0.3`, the actual image used is similar to `datanode-registry.iguazio-platform.app.vm/mlrun/mlrun:1.0.3`. +- MLRun images resolve auto tags: If you specify ```image="mlrun/mlrun"``` the API fills in the tag by the client version, e.g. changes it to `mlrun/mlrun:1.0.4`. So, if the client gets upgraded you'll automatically get a new image tag. +- Where the data node registry exists, MLRun: Appends the registry prefix, so the image loads from the datanode registry. This pulls the image more quickly, and also supports air-gapped sites. When you specify an MLRun image, for example `mlrun/mlrun:1.0.4`, the actual image used is similar to `datanode-registry.iguazio-platform.app.vm/mlrun/mlrun:1.0.4`. These characteristics are great when you’re working in a POC or development environment. But MLRun typically upgrades packages as part of the image, and therefore the default MLRun images can break your product flow. ### Working with images in production For production you should create your own images to ensure that the image is fixed. -- Pin the image tag, e.g. `image="mlrun/mlrun:1.0.3"`. This maintains the image tag at 1.0.3 even when the client is upgraded. Otherwise, an upgrade of the client would also upgrade the image. (If you specify an external (not MLRun images) docker image, like python, the result is the docker/k8s default behavior, which defaults to `latest` when the tag is not provided.) +- Pin the image tag, e.g. `image="mlrun/mlrun:1.0.4"`. This maintains the image tag at 1.0.3 even when the client is upgraded. Otherwise, an upgrade of the client would also upgrade the image. (If you specify an external (not MLRun images) docker image, like python, the result is the docker/k8s default behavior, which defaults to `latest` when the tag is not provided.) - Pin the versions of requirements, again to avoid breakages, e.g. `pandas==1.4.0`. (If you only specify the package name, e.g. pandas, then pip/conda (python's package managers) just pick up the latest version.) diff --git a/hack/local/README.md b/hack/local/README.md index cde61921398..10eff9fcbf1 100644 --- a/hack/local/README.md +++ b/hack/local/README.md @@ -28,12 +28,12 @@ To use MLRun with your local Docker registry, run the MLRun API service, dashboa ``` SHARED_DIR=~/mlrun-data -docker pull mlrun/jupyter:1.0.3 -docker pull mlrun/mlrun-ui:1.0.3 +docker pull mlrun/jupyter:1.0.4 +docker pull mlrun/mlrun-ui:1.0.4 docker network create mlrun-network -docker run -it -p 8080:8080 -p 8888:8888 --rm -d --network mlrun-network --name jupyter -v ${SHARED_DIR}:/home/jovyan/data mlrun/jupyter:1.0.3 -docker run -it -p 4000:80 --rm -d --network mlrun-network --name mlrun-ui -e MLRUN_API_PROXY_URL=http://jupyter:8080 mlrun/mlrun-ui:1.0.3 +docker run -it -p 8080:8080 -p 8888:8888 --rm -d --network mlrun-network --name jupyter -v ${SHARED_DIR}:/home/jovyan/data mlrun/jupyter:1.0.4 +docker run -it -p 4000:80 --rm -d --network mlrun-network --name mlrun-ui -e MLRUN_API_PROXY_URL=http://jupyter:8080 mlrun/mlrun-ui:1.0.4 ``` When the execution completes — diff --git a/hack/local/mljupy.yaml b/hack/local/mljupy.yaml index aa1bdfa2fc0..a1ac7aa3201 100644 --- a/hack/local/mljupy.yaml +++ b/hack/local/mljupy.yaml @@ -63,7 +63,7 @@ spec: spec: containers: - name: jupyter-notebook - image: mlrun/jupyter:1.0.3 + image: mlrun/jupyter:1.0.4 env: - name: MLRUN_NAMESPACE valueFrom: diff --git a/hack/local/mlrun-local.yaml b/hack/local/mlrun-local.yaml index 758d08ea4cc..a0e18546cab 100644 --- a/hack/local/mlrun-local.yaml +++ b/hack/local/mlrun-local.yaml @@ -17,7 +17,7 @@ spec: spec: containers: - name: mlrun-api - image: mlrun/mlrun-api:1.0.3 + image: mlrun/mlrun-api:1.0.4 env: - name: MLRUN_NAMESPACE valueFrom: @@ -72,7 +72,7 @@ spec: spec: containers: - name: mlrun-ui - image: mlrun/mlrun-ui:1.0.3 + image: mlrun/mlrun-ui:1.0.4 env: - name: MLRUN_API_PROXY_URL value: http://mlrun-api:8080 diff --git a/hack/mlrun-all.yaml b/hack/mlrun-all.yaml index cfeba9ac842..0579c4c520b 100644 --- a/hack/mlrun-all.yaml +++ b/hack/mlrun-all.yaml @@ -17,7 +17,7 @@ spec: spec: containers: - name: mlrun-api - image: mlrun/mlrun-api:1.0.3 + image: mlrun/mlrun-api:1.0.4 env: - name: MLRUN_NAMESPACE valueFrom: @@ -77,7 +77,7 @@ spec: spec: containers: - name: mlrun-ui - image: mlrun/mlrun-ui:1.0.3 + image: mlrun/mlrun-ui:1.0.4 env: - name: MLRUN_API_PROXY_URL value: http://mlrun-api:8080 diff --git a/hack/mlrunapi.yaml b/hack/mlrunapi.yaml index 894b28e7368..23a269a25d7 100644 --- a/hack/mlrunapi.yaml +++ b/hack/mlrunapi.yaml @@ -17,7 +17,7 @@ spec: spec: containers: - name: mlrun-api - image: mlrun/mlrun-api:1.0.3 + image: mlrun/mlrun-api:1.0.4 env: - name: MLRUN_HTTPDB__BUILDER__DOCKER_REGISTRY value: "default registry url e.g. index.docker.io/, if repository is not set it will default to mlrun" diff --git a/hack/mlrunui.yaml b/hack/mlrunui.yaml index ffa6510ed07..5f628547b5c 100644 --- a/hack/mlrunui.yaml +++ b/hack/mlrunui.yaml @@ -16,7 +16,7 @@ spec: spec: containers: - name: mlrun-ui - image: mlrun/mlrun-ui:1.0.3 + image: mlrun/mlrun-ui:1.0.4 env: - name: MLRUN_API_PROXY_URL value: http://mlrun-api:8080