Chapter 8. Copying files between buckets


To copy files between buckets in your object store from your workbench, use the copy() method.

Prerequisites

  • You have cloned the odh-doc-examples repository to your workbench.
  • You have opened the s3client_examples.ipynb file in your workbench.
  • You have installed Boto3 and configured an S3 client.
  • You know the key of the source file that you want to copy, and the bucket that the file is stored in.

Procedure

  1. In the notebook file, locate the following instructions to copy files between buckets:

    #Copying files between buckets
    #Replace the placeholder values with your own.
    copy_source = {
        	'Bucket': '<bucket_name>',
        	'Key': '<key>'
    }
    s3_client.copy(copy_source, '<destination bucket>', '<destination_key>')
    Copy to Clipboard
  2. Within the copy_source block, replace <bucket_name> with the name of the source bucket and <key> with the key of the source file, as shown in the example.

    copy_source = {
        	'Bucket': 'aqs086-image-registry',
        	'Key': 'series43-image12-086.csv'
    }
    Copy to Clipboard
  3. Replace the <destination_bucket> with the name of the bucket to copy to, and <destination_key> with the name of the key to copy to, as shown in the example. Execute the code cell.

    s3_client.copy(copy_source, 'aqs971-image-registry', '/tmp/series43-image12-086.csv')
    Copy to Clipboard

Verification

  • Locate the following instructions to list objects in a bucket.

    #Copy Verification
    bucket_name = '<bucket_name>'
    for key in s3_client.list_objects_v2(Bucket=bucket_name)['Contents']:
        					print(key['Key'])
    Copy to Clipboard
  • Replace <bucket_name> with the name of the destination bucket, as shown in the example, and run the code cell.

    #Copy Verification
    bucket_name = 'aqs971-image-registry'
    for key in s3_client.list_objects_v2(Bucket=bucket_name)['Contents']:
    print(key['Key']).
    Copy to Clipboard

    The file that you copied is displayed in the output.

Back to top
Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust. Explore our recent updates.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Theme

© 2025 Red Hat