Using Docker volumes is the preferred method of storing container data locally. Volume support is built directly into Docker, making it an easy tool to use for storage, as well as more portable. However, storing container data in Docker volumes still requires you to back up the data in those volumes on your own. There is another option – storing your container data in the cloud. It’s not a solution for every problem, but after this lab, you’ll have another tool at your disposal. This lab will show you how to mount a Cloud Storage bucket onto your local system as a directory. You will then mount that directory into your Docker container. We will use an httpd container to serve the contents of that bucket as a webpage, but you can use it to share any common data between containers. This hands-on lab will demonstrate how flexible Docker can be. You can make changes to your bucket and all of your containers using the Cloud Storage bucket will near-instantly have access to the content.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Configuration and Installation
- Make a Google Cloud Storage Bucket.
- Install
gcsfuse
. The necessary yum repo configuration has been added to the server for you in/etc/yum.repos.d/gcsfuse.repo
. - Configure FUSE to allow all users to mount the storage.
- Prepare the Cloud Storage Bucket
- Create a mount point on the server.
- Mount the GCS Bucket.
- Copy the website files into the Cloud Storage Bucket mounted on the server.
- Verify the files are present in the bucket.
- Use the GCS Bucket in a Container
- Run an
httpd
container to serve the website. Remember to mount the Cloud Storage folder to the container and publish the web server port. - View the webpage in a browser. Use the server’s public IP provided with the lab.
- Run an