Greetings, Tony P! > What's the correct way to share the mysql/mariadb data dir of the host > system to a container and map the permissions correctly?
There's no correct way to *share* the database directory. Database engine simply do not expect the shared locks in the slightest. > I have been > struggling with this for a couple of days. I'm sorry if this question has > been asked before, but I have searched thoroughly and not been able to find > the solution yet. Basically what I have done so far: > Install mariadb-server on both host and container and: > $ printf "lxd:$(id -u mysql):1\nroot:$(id -u mysql):1\n" | sudo tee -a > /etc/subuid > $ printf "lxd:$(id -g mysql):1\nroot:$(id -g mysql):1\n" | sudo tee -a > /etc/subgid > $ sudo systemctl restart lxd > $ printf "uid $(id -u mysql) 1000\ngid $(id -g mysql) 1000" | lxc config set > $CONTAINER_NAME raw.idmap - > $ lxc restart $CONTAINER_NAME > $ sudo lxc config device add $CONTAINER_NAME mysql disk > source=/var/lib/mysql path=/var/lib/mysql > Unfortunately, this breaks the container and prevents it from starting since > the mapping isn't allowed. > $ sudo lxc info --show-log ub1804x64-3 > Name: ub1804x64-3 > Remote: unix:// > Architecture: x86_64 > Created: 2018/07/09 15:30 UTC > Status: Stopped > Type: persistent > Profiles: default > Log: > lxc ub1804x64-3 20180709154554.682 ERROR lxc_conf - > conf.c:lxc_map_ids:2919 - newuidmap failed to write mapping "newuidmap: uid > range [1000-1001) -> [114-115) not allowed": newuidmap 6725 0 100000 1000 > 1000 114 1 1001 101001 64535 > lxc ub1804x64-3 20180709154554.682 ERROR lxc_start - > start.c:lxc_spawn:1661 - Failed to set up id mapping. > lxc ub1804x64-3 20180709154554.755 WARN lxc_network - > network.c:lxc_delete_network_priv:2607 - Failed to remove interface > "veth38DOB9" from "lxdbr0": Invalid argument > lxc ub1804x64-3 20180709154554.755 ERROR lxc_container - > lxccontainer.c:wait_on_daemonized_start:834 - Received container state > "ABORTING" instead of "RUNNING" > lxc ub1804x64-3 20180709154554.756 ERROR lxc_start - > start.c:__lxc_start:1887 - Failed to spawn container "ub1804x64-3" > lxc 20180709154554.775 WARN lxc_commands - > commands.c:lxc_cmd_rsp_recv:130 - Connection reset by peer - Failed to > receive response for command "get_state" > I'm basically following this article > (https://stgraber.org/2017/06/15/custom-user-mappings-in-lxd-containers/) > written by Stéphane Graber (the super awesome primary LXD developer) to > achieve this. I'll admit that I don't fully understand what's going on here, > if someone could help me understand my mistake a bit better, I'd really > appreciate it. I have a feeling I have the range wrong (1000?). I previously > attempted doing the same by manually adding the mysql user/group and trying > to map those (instead of installing mysql), but that also didn't work out > (Same error). This is what I tried before trying the mapping): > $ sudo groupadd mysql > $ sudo useradd -r -g mysql mysql > I also tried with: > $ printf "both $(id -u mysql) $(id -u mysql)" | lxc config set > $CONTAINER_NAME raw.idmap - > Then the error I get is: > $ sudo lxc info --show-log tmp3 > Name: tmp3 > Remote: unix:// > Architecture: x86_64 > Created: 2018/07/09 20:32 UTC > Status: Stopped > Type: persistent > Profiles: default > Log: > lxc tmp3 20180709204423.805 ERROR lxc_conf - conf.c:lxc_map_ids:2919 - > newgidmap failed to write mapping "newgidmap: gid range [114-115) -> > [114-115) not allowed": newgidmap 30081 114 114 1 0 100000 114 115 100115 > 65421 > lxc tmp3 20180709204423.805 ERROR lxc_start - start.c:lxc_spawn:1661 - > Failed to set up id mapping. > lxc tmp3 20180709204423.876 WARN lxc_network - > network.c:lxc_delete_network_priv:2607 - Failed to remove interface > "vethYL869L" from "lxdbr0": Invalid argument > lxc tmp3 20180709204423.876 ERROR lxc_container - > lxccontainer.c:wait_on_daemonized_start:834 - Received container state > "ABORTING" instead of "RUNNING" > lxc tmp3 20180709204423.877 ERROR lxc_start - start.c:__lxc_start:1887 - > Failed to spawn container "tmp3" > lxc 20180709204423.897 WARN lxc_commands - > commands.c:lxc_cmd_rsp_recv:130 - Connection reset by peer - Failed to > receive response for command "get_state" > I'm using LXD 3.0.1 running on host Ubuntu 18.04 amd64 and testing with a > Ubuntu 18.04 amd64 container > Thanks for your help in advance!! -- With best regards, Andrey Repin Tuesday, July 10, 2018 0:11:53 Sorry for my terrible english... _______________________________________________ lxc-users mailing list [email protected] http://lists.linuxcontainers.org/listinfo/lxc-users
