多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
制作docker之前,将源指向到阿里云 ## 备份原镜像软件源 mv /etc/apt/sources.list /etc/apt/sources.list.bak ## 更改镜像为阿里镜像源 echo "deb http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb-src http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe" >> /etc/apt/sources.list && echo "deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe" >> /etc/apt/sources.list 1、如果容器无法停止,先执行:aa-remove-unknown命令,再执行docker container stop imageId 命令 2、ADD拷贝目录失败:在拷贝文件的时候docker是用“/”来区分目录和文件的,也就是“/root”是被当做根目录文件root,“/root/”才被识别为目录 build镜像命令: docker build -t bbbmarkservices:v2.0.6 . 3、进入正在运行的容器:sudo docker exec -it 65a2cd69a975 /bin/bash,其中784081ffe273为容器的实例ID(使用命令docker ps获取) 4、停止容器:docker container stop 22e5f34de1f3,其中22e5f34de1f3为容器的ID 5、运行一个容器:docker run -it bibibetter:v2 /bin/bash (mongodb容器:-d,后台运行容器,并返回容器ID) docker run -d -e AUTHID="AUTHID" -e MGCOONSTR="mongodb:\/\/localhost:27017" -p 29019:27017 -p 1010:80 -p 1020:9090 -p 1030:22 -v mongo_configdb:/data/configdb -v mongo_db:/data/db -v /root/docker/bbbmarkservices/bgpdir:/www/bbbmarkservices/bgpdir --name bbbmarkservices registry.cn-shenzhen.aliyuncs.com/bibibetter/markservices:latest 6、退出镜像:exit 退出镜像后一般要执行docker ps -l,查看是否还存在后台进程,如果有,执行docker rm ×××,×××为前面命令显示的镜像ID 7、创建一个容器: (1)在应用程序目录下创建文件Dockerfile,写入docker配置信息 (2)建立docker镜像(注意命令最后有个点符号)docker build -t bibibetter:v6 . 8、中文支持(>>为追加操作) echo "export LANG="zh_CN.UTF-8"" >> /etc/profile source /etc/profile 9、制作离线镜像文件 (1)运行镜像 (2)安装必要的软件或删除一些软件 (3)测试镜像中的软件 (4)commit(此时不要停止运行中的镜像):docker commit 4cedf68a2a7c bbbembedder:v1.4.2,其中4cedf68a2a7c 为运行中的镜像实例ID(使用命令docker ps获取),bbbembedder为REPOSITORY,v1.4.2为TAG (5)save: docker save bbbmarkservices:v2.0.5 |gzip > bbbmarkservices_v2.0.5_images.tar.gz 10、导入镜像 将镜像文件上传到服务器后,执行命令:docker load < /root/bibibetterv6.0_images.tar.gz docker load < bbbmarkservices_v2.0.2_images.tar.gz 11、删除镜像出错 docker rmi 5e90946e8da6 Error response from daemon: conflict: unable to delete 5e90946e8da6 (must be forced) - image is being used by stopped container 4e7c110be289 解决办法:执行以下命令删除引用的镜像: docker rm 4e7c110be289 再执行docker rmi 5e90946e8da6 或者加上-f参数强行删除:docker rmi -f 5e90946e8da6 12、发布端口 -p <宿主端口>:<容器端口> 例如:docker run -it -p 20180:80 -p 20181:8080 -p 20182:8976 --name containerName image:tag 13、显示当前容器的所有状态 docker ps -l apt-get -y install openssh-server ssh -l root 192.168.108.60 -p 1030 14、无法删除镜像 Error response from daemon: conflict: unable to delete 6ec9a5a0fc9f (cannot be forced) - image has dependent child images# 6ec9a5a0fc9f为镜像ID 列出依赖: docker image inspect --format='{{.RepoTags}} {{.Id}} {{.Parent}}' $(docker image ls -q --filter since=6ec9a5a0fc9f) 针对列表中的执行: docker rmi **** #其中***为列表中的sha256值 15、docker启动方式 (1)docker run -it -p 3030:3030 --name mykafka landoop/fast-data-dev 这种方式,可以通过使用CTRL+C停止它(但没有删除),然后使用以下命令启动: docker start mykafka (2)docker run -d -p 3030:3030 --name mykafka landoop/fast-data-dev 这种方式在后台启动,这种情况下只有用stop来停止它 (3)docker run --rm -it -v /path/to/local/directory:/tmp landoop/fast-data-dev 这种方式可以跨container来保持数据:将kafka和zookeeper文件保持好。文件夹/path/to/local/directory必须对kafka和zookeeper可写(chmod 0777),以用户nobody运行 brokers将数据保存在/tmp/kafka-logs,zookeeper将数据保存在/tmp/zookeeper 16、升级glibc ln -s /opt/glibc-2.29/lib/libc-2.29.so.6 /lib/x86_64-linux-gnu/libm.so.6