diff --git a/src/main/java/org/olat/repository/manager/RepositoryServiceImpl.java b/src/main/java/org/olat/repository/manager/RepositoryServiceImpl.java
index c70b9add31f6c55845bf19364023433f8cfe2c05..bedf950e4f70c1a521e9d814884ed353e8be6171 100644
--- a/src/main/java/org/olat/repository/manager/RepositoryServiceImpl.java
+++ b/src/main/java/org/olat/repository/manager/RepositoryServiceImpl.java
@@ -53,6 +53,7 @@ import org.olat.core.util.vfs.LocalFolderImpl;
 import org.olat.core.util.vfs.VFSContainer;
 import org.olat.core.util.vfs.VFSItem;
 import org.olat.core.util.vfs.VFSLeaf;
+import org.olat.core.util.vfs.VFSManager;
 import org.olat.course.assessment.manager.AssessmentModeDAO;
 import org.olat.course.assessment.manager.UserCourseInformationsManager;
 import org.olat.course.certificate.CertificatesManager;
@@ -227,10 +228,16 @@ public class RepositoryServiceImpl implements RepositoryService {
 	
 		RepositoryHandler handler = RepositoryHandlerFactory.getInstance().getRepositoryHandler(sourceEntry);
 		copyEntry = handler.copy(author, sourceEntry, copyEntry);
-		
-		
+
 		//copy the image
 		RepositoryManager.getInstance().copyImage(sourceEntry, copyEntry);
+		
+		//copy media container
+		VFSContainer sourceMediaContainer = handler.getMediaContainer(sourceEntry);
+		if(sourceMediaContainer != null) {
+			VFSContainer targetMediaContainer = handler.getMediaContainer(copyEntry);
+			VFSManager.copyContent(sourceMediaContainer, targetMediaContainer);
+		}
 
 		ThreadLocalUserActivityLogger.log(LearningResourceLoggingAction.LEARNING_RESOURCE_CREATE, getClass(),
 				LoggingResourceable.wrap(copyEntry, OlatResourceableType.genRepoEntry));