1. 解决docker容器中文乱码,修改docker容器编码格式
1.临时修改:
locale
locale -a
LANG=C.UTF-8 (有的是zh_CN.UTF-8,不过我在本地没发现这种编码)
source /etc/profile
2.永久修改:修改Dockerfile
在Dockerfile中添加一行
ENV LANG C.UTF-8
重新制作docker镜像,docker run -ti [镜像] 进入容器后执行locale发现编码格式已经被修改为C.UTF-8,之前出现的中文文件名乱码问题也没有了
2. docker 镜像构建(build)
Dockerfile应至少指定CMD, ENTRYPOINT其中一个
CMD可被运行容器时指定的参数覆盖
$ docker images
REPOSITORY TAG IMAGE ID
myapache latest 7ea8aef582cc
$ docker run myapache
$ docker ps
CONTAINER ID IMAGE COMMAND
d8047b1f1f46 myapache “/usr/local/start.sh”
$ docker exec –ti d8047b1f1f46 bash
#在容器内部新建一个文件
root@d8047b1f1f46:/# vim readme.txt
root@d8047b1f1f46:/# exit
#. 将新建的文件提交到镜像中保存
$ docker commit d8047b1f1f46 myapache:v2
3.镜像存储与传输(Ship) – Docker Push
$ docker tag myapache
kw/myapache:v1
#默认push到docker hub
$ docker push kw/myapache:v1
$ docker tag myapache
10.0.0.2:5000/kw/myapache:v1
#push到私有镜像服务器
$ docker push
10.0.0.2:5000/kw/myapache:v1
#从私有镜像服务器pull
$ docker pull
10.0.0.2:5000/kw/myapache:v1
Docker镜像完整路径
- <registry>/<repository>/<image>:<tag>
- 10.0.0.2:5000/kw/myapache:v1
Docker默认registry
- docker.io (the "docker hub")
Ø Insecure-registry配置
§ /etc/docker/daemon.json
§ "insecure-registries": ["10.0.0.0/8"],