Docker中常见的问题
0x01 指定entrypoint
场景:之前每次运行docker镜像,都是修改Dockerfile然后构建运行,这样效率太低,于是构建了基础镜像之后在,在container中进行修改,然后commit,特点是不用重复进行构建。碰到了个问题,我使用的是一个bash脚本作为entrypoint,修改后忘记加sleep了,导致run或者start都会直接退出。此时就需要将镜像的entrypoint替换掉为/bin/bash这样才不会闪退。
docker commit $(docker ps -q) images
docker run -it --entrypoint /bin/bash images
0x02 Mysql迁移
docker export ce246fc95221 > mysql.tar
docker export ce246fc95221 > mysql.tar
数据恢复
docker exec ce246fc95221 /usr/bin/mysqldump -u root --password=X --all-databases > backup.sql
cat backup.sql | docker exec -i bf96a945b393 /usr/bin/mysql -u root --password=X