Merge pull request #368 from crazy-max/share-image
Share built image between jobs
This commit is contained in:
		
						commit
						655d1f6b37
					
				| @ -36,6 +36,7 @@ ___ | |||||||
|     * [GitHub cache](docs/advanced/cache.md#github-cache) |     * [GitHub cache](docs/advanced/cache.md#github-cache) | ||||||
|   * [Local registry](docs/advanced/local-registry.md) |   * [Local registry](docs/advanced/local-registry.md) | ||||||
|   * [Export image to Docker](docs/advanced/export-docker.md) |   * [Export image to Docker](docs/advanced/export-docker.md) | ||||||
|  |   * [Share built image between jobs](docs/advanced/share-image-jobs.md) | ||||||
|   * [Handle tags and labels](docs/advanced/tags-labels.md) |   * [Handle tags and labels](docs/advanced/tags-labels.md) | ||||||
|   * [Update DockerHub repo description](docs/advanced/dockerhub-desc.md) |   * [Update DockerHub repo description](docs/advanced/dockerhub-desc.md) | ||||||
| * [Customizing](#customizing) | * [Customizing](#customizing) | ||||||
| @ -171,6 +172,7 @@ jobs: | |||||||
|   * [GitHub cache](docs/advanced/cache.md#github-cache) |   * [GitHub cache](docs/advanced/cache.md#github-cache) | ||||||
| * [Local registry](docs/advanced/local-registry.md) | * [Local registry](docs/advanced/local-registry.md) | ||||||
| * [Export image to Docker](docs/advanced/export-docker.md) | * [Export image to Docker](docs/advanced/export-docker.md) | ||||||
|  | * [Share built image between jobs](docs/advanced/share-image-jobs.md) | ||||||
| * [Handle tags and labels](docs/advanced/tags-labels.md) | * [Handle tags and labels](docs/advanced/tags-labels.md) | ||||||
| * [Update DockerHub repo description](docs/advanced/dockerhub-desc.md) | * [Update DockerHub repo description](docs/advanced/dockerhub-desc.md) | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										58
									
								
								docs/advanced/share-image-jobs.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								docs/advanced/share-image-jobs.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,58 @@ | |||||||
|  | # Share built image between jobs | ||||||
|  | 
 | ||||||
|  | As each job is isolated in its own runner you cannot use your built image between jobs (except for [self-hosted runners](https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners)). | ||||||
|  | However, you can [pass data between jobs in a workflow](https://docs.github.com/en/actions/guides/storing-workflow-data-as-artifacts#passing-data-between-jobs-in-a-workflow) | ||||||
|  | using the [actions/upload-artifact](https://github.com/actions/upload-artifact) and [actions/download-artifact](https://github.com/actions/download-artifact) | ||||||
|  | actions: | ||||||
|  | 
 | ||||||
|  | ```yaml | ||||||
|  | name: ci | ||||||
|  | 
 | ||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     branches: | ||||||
|  |       - 'master' | ||||||
|  | 
 | ||||||
|  | jobs: | ||||||
|  |   build: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     steps: | ||||||
|  |       - | ||||||
|  |         name: Checkout | ||||||
|  |         uses: actions/checkout@v2 | ||||||
|  |       - | ||||||
|  |         name: Set up Docker Buildx | ||||||
|  |         uses: docker/setup-buildx-action@v1 | ||||||
|  |       - | ||||||
|  |         name: Build and export | ||||||
|  |         uses: docker/build-push-action@v2 | ||||||
|  |         with: | ||||||
|  |           context: . | ||||||
|  |           tags: myimage:latest | ||||||
|  |           outputs: type=docker,dest=/tmp/myimage.tar | ||||||
|  |       - | ||||||
|  |         name: Upload artifact | ||||||
|  |         uses: actions/upload-artifact@v2 | ||||||
|  |         with: | ||||||
|  |           name: myimage | ||||||
|  |           path: /tmp/myimage.tar | ||||||
|  | 
 | ||||||
|  |   use: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     needs: build | ||||||
|  |     steps: | ||||||
|  |       - | ||||||
|  |         name: Set up Docker Buildx | ||||||
|  |         uses: docker/setup-buildx-action@v1 | ||||||
|  |       - | ||||||
|  |         name: Download artifact | ||||||
|  |         uses: actions/download-artifact@v2 | ||||||
|  |         with: | ||||||
|  |           name: myimage | ||||||
|  |           path: /tmp | ||||||
|  |       - | ||||||
|  |         name: Load image | ||||||
|  |         run: | | ||||||
|  |           docker load --input /tmp/myimage.tar | ||||||
|  |           docker image ls -a | ||||||
|  | ``` | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user