docker 卸载

apt-get autoremove docker docker-ce docker-engine docker.io containerd runc
dpkg -l | grep docker
dpkg -l |grep ^rc|awk ‘{print $2}’ |sudo xargs dpkg -P
apt-get autoremove docker-ce-*

// 带配置删除 apt-get purge docker-ce docker-ce-cli containerd.io
// apt-get purge docker-sudo docker-cece

rm -rf /etc/systemd/system/docker.service.d
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
docker —version

docker 安装

apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | apt-key add -
apt-key fingerprint 0EBFCD88 验证key的指纹
add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”
add-apt-repository “deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable”
apt-get update
apt-get install docker-ce docker-ce-cli containerd.io
docker —version
docker run hello-world 验证 docker

gpasswd -a 用户名 docker 将非root用户加入docker组,以允许免sudo执行docker

重启服务并刷新docker组成员

service docker restart
newgrp - docker 查看docker组用户

systemctl enable docker
systemctl start docker
apt-get update

12)安装docker-compose

https://www.runoob.com/docker/docker-compose.html
sudo curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s-uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose —version

//////////////////////////////////////////////////////////////////////////////

dockfile 编写

root@liwenzhou:~/thdocker# more Dockerfile
FROM ubuntu:18.04
MAINTAINER Docker tianhe chain alvin@tianhecloud.com.com
RUN apt-get -qq update
RUN apt-get -qqy install openssl
RUN apt-get -qqy install default-jdk
RUN apt-get -qqy install ssh

more Dockerfile

FROM ubuntu:20.04
ADD fisco-bcos /usr/local/bin/.
RUN /bin/sh -c set -xe && echo ‘#!/bin/sh’ > /usr/sbin/policy-rc.d && echo ‘exit 101’ >> /usr/sbin/policy-rc.d && chmod +x /usr/sbin/policy-rc.d && dpkg-divert —local —rename —add /sbin/initctl && cp -a /usr/sbin/policy-rc.d /sbin/initctl && sed -i ‘s/^exit./exit 0/‘ /sbin/initctl && echo ‘force-unsafe-io’ > /etc/dpkg/dpkg.cfg.d/docker-apt-speedup && echo ‘DPkg::Post-Invoke { “rm -f /var/cache/apt/archives/.deb /var/cache/apt/archives/partial/.deb /var/cache/apt/.bin || true”; };’ > /etc/apt/apt.conf.d/docker-clean && echo ‘APT::Update::Post-Invoke { “rm -f /var/cache/apt/archives/.deb /var/cache/apt/archives/partial/.deb /var/cache/apt/.bin || true”; };’ >> /etc/apt/apt.conf.d/docker-clean && echo ‘Dir::Cache::pkgcache “”; Dir::Cache::srcpkgcache “”;’ >> /etc/apt/apt.conf.d/docker-clean && echo ‘Acquire::Languages “none”;’ > /etc/apt/apt.conf.d/docker-no-languages && echo ‘Acquire::GzipIndexes “true”; Acquire::CompressionTypes::Order:: “gz”;’ > /etc/apt/apt.conf.d/docker-gzip-indexes && echo ‘Apt::AutoRemove::SuggestsImportant “false”;’ > /etc/apt/apt.conf.d/docker-autoremove-suggests
#RUN /bin/sh -c [ -z “$(apt-get indextargets)” ]
RUN mkdir -p /run/systemd && echo ‘docker’ > /run/systemd/container
CMD [“/bin/bash”]
LABEL maintainer=service@qitown.com.cn
RUN apt-get -q update && apt-get install -qy —no-install-recommends libssl-dev zlib1g-dev && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && apt-get install -qy —no-install-recommends tzdata && dpkg-reconfigure —frontend noninteractive tzdata && rm -rf /var/lib/apt/lists/

EXPOSE 20914 30914 8914
ENTRYPOINT [“/usr/local/bin/thchain”]
CMD [“—version”]

建造镜像

docker build -t tianheorg/thchain:latest .
docker build -t thchain_img:v1 .

拉取镜像

docker pull ubuntu:18.04
docker images

从镜像启动

指定映射时最好指定ip 否则只能用0.0.0.0 对应访问
docker run —name kms -d -p 192.168.14.123:3366:3366 -ti tianheorg/thkms:latest /bin/bash
docker run —name newubuntu -ti ubuntu:latest /bin/bash
docker run —name thnode -ti tianheorg/thchain:latest /bin/bash
docker run -ti ubuntu:16.04 /bin/bash
docker ps -a

运行容器 启动容器 pensive_perlman 容器名
docker start pensive_perlman
docker stop a4c41ad36269

进入容器

docker exec -it 2d2dbe77a3fe /bin/bash
docker attach 44fc0f0582d9

删除容器 ,

docker rm container_id

删除镜像 image

docker image rm 75d568439290
拷贝
docker cp tools.tgz bcoschain:/root/

docker inspect bda4413a3ff0 查看docker 容器信息

centos 仓库设置

yum-config-manager —add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
yum-config-manager —add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum-config-manager —add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager —add-repo https://download.docker.com/linux/centos/docker-ce.repo

打包image

docker save fiscoorg/fiscobcos:latest > fiscoimg.tar

加载tar包

docker load < fiscoimg.tar

https://hub.docker.com/r/fiscoorg/fiscobcos 镜像网站

停止容器失败 最好重启

root@node1:~# aa-remove-unknown 停止容器失败,root用户下试一下
systemctl daemon-reload
systemctl start docker